Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di lyllo
    Registrato dal
    Apr 2001
    Messaggi
    832

    [php] Scorrere e visualizzare interamente un vettore

    ciao gente.
    ho il seguente vettore riempito dinamicamente (ora è solo un esempio):

    Codice PHP:
    Array ( [1] => 
    Array ( [
    0] => giocatore1 cognome1
    giocaotre2 cognome2
    giocatore3 cognome3
    [1] => giocatore4 cognome4
    giocatore5 cognome5
    giocatore6 cognome6
    [2] => Cosain,dún,sáigh [3] => Cosain,dún,sáigh [4] => [5] => 24/4/2006 
    [
    2] => Array ( [0] => giocaotre2 cognome2
    giocatore4 cognome4
    giocatore6 cognome6
    [1] => giocatore1 cognome1
    giocatore3 cognome3
    giocatore5 cognome5
    [2] => Fáinne óir ort [3] => Póg ma thoin [4] => [5] => 1/1/2006 
    [
    3] => Array ( [0] => giocatore1 cognome1
    giocatore3 cognome3
    giocatore5 cognome5
    giocatore7 cognome7
    giocatore9 cognome9
    [1] => giocaotre2 cognome2
    giocatore4 cognome4
    giocatore6 cognome6
    giocatore8 cognome8
    giocatore10 cognome10
    [2] => Póg ma thoin [3] => Fáinne óir ort [4] => [5] => 19/10/2008 
    [
    4] => Array ( [0] => giocatore1 cognome1
    giocatore3 cognome3
    giocatore5 cognome5
    giocatore7 cognome7
    giocatore9 cognome9
    [1] => giocaotre2 cognome2
    giocatore4 cognome4
    giocatore6 cognome6
    giocatore8 cognome8
    giocatore10 cognome10
    [2] => Póg ma thoin [3] => Fáinne óir ort [4] => [5] => 12/12/2008 ) ) 
    con un normale ciclo FOR, non riesco a scorrere nulla, ottengo sempre e solo l'ULTIMO campo inserito (quello del 12/12/2008 -per capirci-) che viene ripetuto un numero di volte pari al numero di campi del vettore...
    come mai?
    come posso fare?

    ecco lo script che avevo creato per provare a leggere e visualizzare tutto il vettore senza la dicitura Array['xxx'] davanti (ho usato str_replace:

    Codice PHP:
    $prova "Array['";
        for(
    $n 0$n count($sq); $n++){
            for(
    $n 0$n count($sq); $n++){//questa era un'ultima prova disperata...
            //CORREZIONE CARATTERI DELL'ARRAY        
            
    if(strstr("$sq[$n]['$statoA']"$prova) == true){
                
    $sosSN trim("Array['");
                }
            else{
                
    $sosSN "['";
                }
            
    $sosDX =  "']";
            
    //STATO A
            
    $statoAmod str_replace($sosSN,'',"$sq[$n]['$statoA']");
            
    $statoA2 $statoAmod;
            
    $statoA2 str_replace($sosDX,'',"$statoA2");
            
    //STATO B
            
    $statoBmod str_replace($sosSN,'',"$sq[$n]['$statoB']");
            
    $statoB2 $statoBmod;
            
    $statoB2 str_replace($sosDX,'',"$statoB2");        
            
    //DATA
            
    $data_mod str_replace($sosSN,'',"$sq[$n]['$data']");
            
    $data_2 $data_mod;
            
    $data_2 str_replace($sosDX,'',"$data_2");
            
    //SQUADRA A
            
    $sqAmod str_replace($sosSN,'',"$sq[$n]['$sqA']");
            
    $sqA2 $sqAmod;
            
    $sqA2 str_replace($sosDX,'',"$sqA2");
            
    //SQUADRA B
            
    $sqBmod str_replace($sosSN,'',"$sq[$n]['$sqB']");
            
    $sqB2 $sqBmod;
            
    $sqB2 str_replace($sosDX,'',"$sqB2");
            
    //PARIZILE
            
    $parziale_mod str_replace($sosSN,'',"$sq[$n]['$parziale']");
            
    $par_2 $parziale_mod;
            
    $par_2 str_replace($sosDX,'',"$par_2");                                
            echo
    "<table align=center>
                    <tr><td>Partita del 
    $data_2</td></tr>
                    <tr><td>[b]
    $statoA2[/b]</td><td></td><td>[b]$statoB2[/b]</td></tr>
                    <tr><td>
    $sqA2</td><td>[b]$par_2[/b]</td><td>$sqB2</td></tr>
                </table>
                <hr width=80% size=1>"
    ;
    }

    grazie, spero possiate aiutarmi.
    ciao ciao.

  2. #2
    Hai creato una procedura lunghissima per elaborare l'array eliminando le varie parentesi quando non ne avevi affatto bisogno!
    PHP mette quei simboli quando usi print_r per rendere l'array leggibile!!
    Per estrarre i valori dall array ti basta semplicemente fare questo ciclo!

    Codice PHP:
    foreach($array as $indice => $valore) {
    echo 
    $valore."
    "

    http://www.firesoftweb.it - Servizi gratuiti per il tuo sito web: forum, guestbook, contatori visite...

  3. #3
    Utente di HTML.it L'avatar di lyllo
    Registrato dal
    Apr 2001
    Messaggi
    832
    Originariamente inviato da dado86ssj
    Hai creato una procedura lunghissima per elaborare l'array eliminando le varie parentesi quando non ne avevi affatto bisogno!
    PHP mette quei simboli quando usi print_r per rendere l'array leggibile!!
    Per estrarre i valori dall array ti basta semplicemente fare questo ciclo!

    Codice PHP:
    foreach($array as $indice => $valore) {
    echo 
    $valore."
    "

    usando il foreach non ottengo nulla
    ottengo solo una serie di scritte "Array"

  4. #4
    Devi annidare un foreach dentro l'altro, l'array è bidimensionale
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  5. #5
    Prova ad estrarre uno o più valori manualmente e vedi se funziona!

    Codice PHP:
    $valore1 $array['indice1'];
    $valore2 $array['indice2'];
    ... 
    http://www.firesoftweb.it - Servizi gratuiti per il tuo sito web: forum, guestbook, contatori visite...

  6. #6
    Utente di HTML.it L'avatar di lyllo
    Registrato dal
    Apr 2001
    Messaggi
    832
    Originariamente inviato da gm
    Devi annidare un foreach dentro l'altro, l'array è bidimensionale
    ho provato ad usare il codice così:

    Codice PHP:
    $sqd = array($sqA$sqB$data);

    ...

        foreach(
    $sqd  as $in => $val){
            foreach(
    $sqd as $in => $val){
                echo 
    "
    "
    .$data." | ".$sqA." | ".$sqB."
    "
    ;
                }
            } 
    ma ottengo solo la stampa ricorsiva per 4 volte (quando i record sono solo 2) sempre della stesso campo!

  7. #7
    Originariamente inviato da lyllo
    Codice PHP:
    foreach($sq as $indice => $valore) {    
        foreach(
    $sq as $indice => $valore2) {
            echo 
    $valore2.
    "
    ;
    }

    ma ottengo la lista raddoppiata di "Array"...
    ninte testo ne valori
    Cicli due volte $sq, è normale che tu non ottenga il risultato sperato.

    Prova a scorrere $valore nel secondo foreach
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  8. #8
    Utente di HTML.it L'avatar di lyllo
    Registrato dal
    Apr 2001
    Messaggi
    832
    Originariamente inviato da gm
    Cicli due volte $sq, è normale che tu non ottenga il risultato sperato.

    Prova a scorrere $valore nel secondo foreach
    scusa ma non capisco.

    riposto il codice:

    Codice PHP:
    //vettore
    $sqd[$i] = array($sqA$sqB$data);


    //ciclo di lettura:
        
    foreach($sqd  as $in => $val){
            foreach(
    $sqd as $in => $val){
                echo 
    "
    "
    .$data." | ".$sqA." | ".$sqB."
    "
    ;
                }
            } 
    che / come devo fare?

  9. #9
    Prova così:

    Codice PHP:
    foreach($array as $indice => $valore) {

        foreach(
    $valore AS $value) {

            echo 
    $value."
    "

       
    }


    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  10. #10
    Utente di HTML.it L'avatar di lyllo
    Registrato dal
    Apr 2001
    Messaggi
    832
    allora, così funziona quasi bene.
    solo che:

    avrei bisogno di formattare il testo in tabelle, dividendo il vettore in parti
    una cosa tipo:

    Codice PHP:
    echo"
    <table>
    <tr><td> DATA: 
    $data</td></tr>
    <tr><td>
    $sqA</td><td>$sqB</td>
    </table>
    "

    la tua procedura mi legge i dati del vettore ma non so come fare quanto detto nello script di esempio, ed in più non capisco come mai una data venga visualizzata in fondo alla lista invece che insieme ai dati nella stessa riga in cui è stata inserita.

    grazie.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.