Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Problema da niubbi :(

  1. #1

    Problema da niubbi :(

    Salve a tutti da 1 settimana circa mi sono buttato sul php..mi piace parecchio

    Ho due problemi...
    Faccio il login in una pagina, mi accede perfettamente. Io vorrei caricare in una tabella, il nome della squadra dell'utente contenuto in un'altra tabella. Faccio la query mi restituisce il risultato giusto pero non me lo inserisce nella tabella!sto impazzendo -.- non capisco perke appena visualizzo la query va tutto bene poi quando si tratta di inserirlo nella tabella sbrocca -.-

    Vi posto i listati:
    La query che mi restituisce data un nick la squadra
    codice:
    switch($status){
    			case AUTH_LOGGED:
    			$q .="id='$user[username]'";
    			$q= "SELECT nomes FROM Squadra WHERE ".$q;
    			$r=mysql_query($q) or die ("Errore della query!".mysql_error());
    			while($row=mysql_fetch_array($r)){
    				echo "<a href=view.php?id=$row[nomes]>".$row[nomes]."</a>"; //questo solo per visualizzare la query, per verificarla
    			}
    Ecco la parte incriminata
    codice:
    <tr>
       <td bordercolor="#FFFFFF" class="Stile28"><span class="Stile28">.::</span><span class="Stile10"> <? echo "".$row[nomes]." &raquo;";?></span></td>
    </tr>
    Poi un'altra cosa, per risolvere la query ho dovuto utilizzare il nick dell'utente invece che l'id...per qualche arcano e oscuro motivo $user[id] non me lo visualizzava -.-'' come mai?A livello di db puo anche andare bene il nick essendo univoco pero...

    Grazie a tutti

  2. #2
    Al primo problema ho ovviato anche se in maniera poco chic...ho salvato il risultati della query in un array e ora funziona :/

    Per quanto riguarda l'id che potete dirmi?

  3. #3
    Per ciò che rigurada l'array è normale che non funzioni. Richiami le chiavi dell'array in modo sbagliato. non è $row[nomes] ma $row['nomes'], con gli apici a racchiuder il nome delle chiave. Per ciò che riguarda l'id il modo corretto è questo:

    Codice PHP:
    switch($status){
                case 
    AUTH_LOGGED:
                
    $q ="id='$user[username]'";
                
    $q .= "SELECT nomes FROM Squadra WHERE ".$q;
                
    $r=mysql_query($q) or die ("Errore della query!".mysql_error());
                while(
    $row=mysql_fetch_array($r)){
                    echo 
    "<a href=view.php?id=$row[nomes]>".$row[nomes]."</a>"//questo solo per visualizzare la query, per verificarla
                

    Il punto serve per concatenare, l'uguale per assegnare. Ciò vuol dire che la prima volta usi un normalissimo operatore di assegnazione (=), dopo appendi alla fine della stringa la clausola where usando .= .
    La query potresti, cmq, costruirla in un unico passaggio in questo modo:
    $q = "SELECT nomes FROM Squadra WHERE id='$user[username]'";

    Da notare che nei doppi apici per richiamare il nome della chiave non ho usato gli apici singoli. Se invece avessi scritto la query in questo modo

    $q = "SELECT nomes FROM Squadra WHERE id='" . $user['username'] . "'";

    avrei dovuto usarli (come ho fatto). ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.