• User

    Scrivere a video 4 risultati come e dove voglio

    Prima di tutto il primo dubbio.
    Questo codice:

     <?php 
    $query = "SELECT * FROM tab_loc WHERE pend_loc=1
    ORDER BY data_loc DESC LIMIT 0,4";
    $result = mysql_query&#40;$query, $db&#41;;
    $row = mysql_fetch_array&#40;$result&#41;
    ?>
    

    mi fornisce come risultato una variabile array $row composta da quattro elementi?

    Se si, per stamparli a video, per esempio il secondo come posso fare?
    Così funziona?
    echo "$row[nome][2]"
    ?

    Problema risolto. Mi sono letto proprio ora la pagina:
    http://www.giorgiotave.it/guida_php/array.php
    ed ho trovato scritto questo:

    &#91;i&#93; Quando si imposta un array automaticamente ognuno di essi riceve un numerino tra le parentesi quadre&#40;i numeri partono da 0&#41;. Quindi l'array $elenco_nomi è così realmente. Il ciclo for li prende uno ad uno e li stampa a video
    
    $elenco_nomi &#91;0&#93; = "giorgio";
    
    $elenco_nomi &#91;1&#93; = "nicola";
    
    $elenco_nomi &#91;2&#93; = "filippo";&#91;/i&#93;
    

    Spero di essermi risposto corettamente.

    Quindi nel mio caso ho i "numeretti" che vanno da 0 a 3 per un totale di 4!


  • User

    Eppure non mi funziona 😞

    <a class=\"anormalmini\" title=\"$row&#91;nome_loc&#93;&#91;0&#93;\"  href=\"skiresort-$row&#91;id_loc&#93;&#91;0&#93;.html\">$row&#91;nome_loc&#93;&#91;0&#93;</a>
    

    Non mi stampa il primo valore contenuto nel database :mmm: :mmm: :mmm:

    Ho gioito troppo presto.


  • User Attivo

    La mysql_fetch_array torna il primo record trovato, nell'array hai una colonna per ogni campo del record.
    Il primo campo é $row[0]
    Se vuoi leggere tutti i record devi fare:

    
    while &#40;$row = mysql_fetch_array&#40;$result&#41;&#41;
      &#123;
      print_r&#40;$row&#41;;
      &#125;
    
    

    Con print_r vedi il contenuto dell'array


  • User

    Niente da fare.
    Sembra che $row sia si un array ma che contenga solamente i valori dell'ultima riga selezionata.

    In definitiva a me servirebbero 4 array. Dovrei creare questi 4 array delle ultime 4 righe del db... come posso farlo?

    Potrei creare 4 righe di codice di questo tipo:

    $query = "SELECT * FROM tab_loc WHERE pend_loc=1 ORDER BY data_loc DESC LIMIT 0";
    $result = mysql_query&#40;$query, $db&#41;;
    $row1 = mysql_fetch_array&#40;$result&#41;;
    
    $query = "SELECT * FROM tab_loc WHERE pend_loc=1 ORDER BY data_loc DESC LIMIT 0,1";
    $result = mysql_query&#40;$query, $db&#41;;
    $row2 = mysql_fetch_array&#40;$result&#41;;
    

    e così via..
    Secondo voi funziona?


  • User

    @margheritebianche said:

    La mysql_fetch_array torna il primo record trovato, nell'array hai una colonna per ogni campo del record.
    Il primo campo é $row[0]
    Se vuoi leggere tutti i record devi fare:

    
    while &#40;$row = mysql_fetch_array&#40;$result&#41;&#41;
     &#123;
     print_r&#40;$row&#41;;
     &#125;
    
    

    Con print_r vedi il contenuto dell'array
    Ma vedi a me serve stamapre a video le informazioni contenute nel primo nel secondo, nel terzo e nel quart oarray come e dove voglio...
    Se faccio un while non riesco a mettercele dentro una tabella 2x2..
    Grazie.


  • User Attivo
    
    while &#40;$row = mysql_fetch_array&#40;$result&#41;&#41; 
      $doppioArray&#91;&#93; = $row;
    
    

    Se fai così in $doppioArray ti trovi righe e colonne e ne puoi fare ciò che vuoi!