• User

    mhm mi sa che il problema è più a monte.
    come si fa a includere una variabile in una query? perchè mi sa che sbaglio nello scrivere la select...


  • User Attivo

    SELECT nome_campo FROM nome_tabella WHERE nome_campo = '$variabile'
    SELECT nome_campo FROM nome_tabella WHERE nome_campo = 'stringa'

    le variabili così come le stringhe normali tra apici singoli... se passi una variabile di tipo $_VARS['var'] ti consiglio di assegnarla prima all'inizio della pagina:

    if(isset($_VARS['var]))
    $var = $_VARS['var];
    else
    $var = "";

    E poi usi $var (volendo nell'isset di prima puoi anche mettere l'escaping della stringa per aumentare la sicurezza)


  • ModSenior

    la query sarebbe cosi corretta:
    [php]$query = "SELECT nick FROM nick_utente WHERE utente = '$_SESSION['MM_Username']'";[/php]


  • User

    @Thedarkita said:

    la query sarebbe cosi corretta:
    [php]$query = "SELECT nick FROM nick_utente WHERE utente = '$_SESSION['MM_Username']'";[/php]

    anche in questo modo mi da' lo stesso degli errori..
    a questo punto credo che il problema sia nello script relativo all'accesso...
    quindi prima devo risolverlo per andare avanti..
    cose faccio continuo in questo thread oppure ne apro un'altro?

    mi servirebbe poter creare una semplice area riservata e avere dei gruppi di utente (in particolar modo l'admin -cioè io- poter avere accesso a determinate pagine).
    ho visto che qua sul sito c'è già una script, ma a quanto pare ha dato un po' di problemi a non poche persone...

    grazie veramente a tutti per l'aiuto.


  • User Attivo

    Prepara una semplice query che prenda i dati che passi al form di login e in caso di riscontro user/password nel db setta una variabile di sessione con l'id di chi si è loggato...

    Poi un file sicurezza.php nel quale cerchi la variabile di sessione e se c'è tutto ok, mentre se non c'è chiami la pagina iniziale... poi la sicurezza.php la metti require in ogni pagina che vuoi "proteggere" e per le pagine che vuoi vedere solo tu come admin metti che la variabile di sessione non solo esista ma sia quella relativa al tuo id/nick...

    keiske


  • User

    allora, io credo di diventarci scemo.
    non riesco in nessun modo a visualizzare i risultati.
    ho usato questo codice:
    [php]
    <body>
    <!-- area riservata -->
    <?php
    $sql = 'SELECT * FROM nick_utente LIMIT 0, 30 ';
    $result = mysql_query($sql);
    print ($result);
    ?>
    </body>
    [/php]
    non mi torna neanche un risultato! la query è corretta, PER FORZA. L'ho copiata da phpMyAdmin e poi mi sembra basilare...
    allora, se mi spiegate perchè non mi viene fuori nulla?
    (p.s. ovviamente la tabella non è vuota, c'è dentro un record.. e ho impostato come chiave primaria il campo utente...)


  • ModSenior

    quella è una query dovrebbe stamparti #resource...
    devi usare altre funzioni come mysql_fetch_array per spampare il contenuto, oppure mysql_num_rows per contare il numero di record


  • User Attivo

    già... il $result è un array... non puoi stamparlo

    per vedere se ci sono risultati, alla grezza fai

    if(mysql_num_rows($result))
    echo "ci sono risultati";

    Per vedere i risultati in dettaglio invece usi come ha detto dark fetch_array

    keiske


  • User

    ho fatto un paio di prove e ho avuto conferema...
    è proprio come pensavo: è lo script del login che fa casino e mi impalla tutto quanto...
    prima devo sistemare questo, poi dopo tutto il resto viene da se
    cmq grazie a tutti quanti


  • User

    allora, alla fine, picchia e mena, ci sono riuscito.
    paradossalmente complicando le cose.
    ecco il codice:
    [php]
    <?php
    $result = mysql_query("SELECT sitoFROM utente_sito WHERE nick = (SELECT nick FROM nick_utente WHERE utente = '".$_SESSION['username']."')");
    for ($i = 1; $i <= mysql_num_rows($result); $i++)
    {
    $riga = mysql_fetch_assoc($result);
    if ($i == mysql_num_rows($result))
    {
    print ('"' . $riga["sito"] . '"');
    }
    else
    {
    print ('"' . $riga["sito"] . '",');
    }
    }

    ?>
    [/php]

    come avrete già capito ho un po' di problemi nel gestire il risultato di una query...
    :bho: