• User Newbie

    il segmento è questo

    foreach ($aUnits as $sFilename=>$sTitle) {
    echo"<br>".$sFilename."/";
    print_r($sTitle);
    }
    

    e mi restituisce:

    1/Array (     [1] => Besugo ) 
    2/Array (     [28] => prova ) 
    3/Array (     [15] => test1 ) 
    4/Array (     [16] => test Friday ) 
    5/Array (     [17] => upload1 ) 
    6/Array (     [18] => upload2 ) 
    7/Array (     [19] => upload3 ) 
    8/Array (     [22] => prova ) 
    9/Array (     [24] => test Monday ) 
    10/Array (     [29] => when love takes over ) 
    11/Array (     [26] => prova2 ) 
    12/Array (     [27] => titolo dell mp3 ) 
    13/Array (     [31] => Samoyed ) 
    14/Array (     [32] => puzzle ) 
    15/Array (     [33] => paint red ) 
    16/Array (     [34] => Snow ) 
    17/Array (     [35] => Prima immagine quadrata ) 
    18/Array (     [36] => Prima immagine quadrata ) 
    19/Array (     [37] => ciao 1 ) 
    20/Array (     [38] => canzone 1 ) 
    21/Array (     [39] => FAQFEWWW ) 
    22/Array (     [40] => titolo 1 ) 
    23/Array (     [41] => REGGA ) 
    24/Array (     [42] => No one ) 
    25/Array (     [43] => So What ) 
    26/Array (     [44] => titolo mp3 ) 
    27/Array (     [45] => prova 1 )
    

    quelli a destra del => sono cio che dovrebbe essere stampato


  • User

    io farei così:
    <?php

    $mysqli = new mysqli("$host", "$username", "$psw", "$dbname");
    $query = "SELECT dzdom_musicbattle_media.image_id, dzdom_musicbattle_media.title FROM dzdom_musicbattle_media WHERE dzdom_musicbattle_media.user_id=42";
    $result = $mysqli->query($query);

    while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
    $img = $row[0];
    $titolo = $row[1];

    echo $img . "/" . $titolo."\n";
    

    }
    ?>

    Non ha senso inserire il contenuto del feth in un array e poi successivamente parsare nuovamente l'array creata...
    il while percorre l'intero risultato della query fin quando trova elementi.. la dove non ne trova più termina il ciclo.


  • User Newbie

    No, a me serve nell'array perchè non devo solo stamparlo


  • User

    allora fai:
    <?php

    $mysqli = new mysqli("$host", "$username", "$psw", "$dbname");
    $query = "SELECT dzdom_musicbattle_media.image_id, dzdom_musicbattle_media.title FROM dzdom_musicbattle_media WHERE dzdom_musicbattle_media.user_id=42";
    $result = $mysqli->query($query);
    $aElement = array();
    while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
    $img = $row[0];
    $titolo = $row[1];
    $aElement[] = $img . "/" . $titolo;
    }

    foreach($aElement as $value){
    echo $value."\n";
    }

    ?>


  • User Newbie

    mi spiego meglio a me servirebbe un array di questo formato array=('elemento1'=>'elementoassociato1', 'elemento2'=>'elementoassociato2', 'elemento3'=>'elementoassociato3', 'elemento4'=>'elementoassociato4',); ma di n elementi che vanno ad inserirsi nel ciclo


  • User

    <?php

    $mysqli = new mysqli("$host", "$username", "$psw", "$dbname");
    $query = "SELECT dzdom_musicbattle_media.image_id, dzdom_musicbattle_media.title FROM dzdom_musicbattle_media WHERE dzdom_musicbattle_media.user_id=42";
    $result = $mysqli->query($query);
    $aElement = array();
    while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
    $img = $row[0];
    $titolo = $row[1];
    $aElement[] = array($img => $titolo);
    }

    foreach($aElement as $k =>$value){
    echo $value."\n";
    }

    ?>

    Scrivimi un po' che ti stampa??


  • User Newbie

    $aUnits=array();
    while ($row = $result->fetch_row()){
    $img=$row[0];
    $titolo=$row[1];
    $aUnits=array($img=>$titolo);
    }

    questo funziona ma salva solo l'ultimo elemento


  • User Newbie

    stampa
    Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array Array


  • User

    scusami invece di echo $value."\n"; fai print_r($value)."\n";


  • User Newbie

    stampa lo stesso array

    1/Array ( [1] => Besugo ) 2/Array ( [28] => prova ) 3/Array ( [15] => test1 ) 4/Array ( [16] => test Friday ) 5/Array ( [17] => upload1 ) 6/Array ( [18] => upload2 ) 7/Array ( [19] => upload3 ) 8/Array ( [22] => prova ) 9/Array ( [24] => test Monday ) 10/Array ( [29] => when love takes over ) 11/Array ( [26] => prova2 ) 12/Array ( [27] => titolo dell mp3 ) 13/Array ( [31] => Samoyed ) 14/Array ( [32] => puzzle ) 15/Array ( [33] => paint red ) 16/Array ( [34] => Snow ) 17/Array ( [35] => Prima immagine quadrata ) 18/Array ( [36] => Prima immagine quadrata ) 19/Array ( [37] => ciao 1 ) 20/Array ( [38] => canzone 1 ) 21/Array ( [39] => FAQFEWWW ) 22/Array ( [40] => titolo 1 ) 23/Array ( [41] => REGGA ) 24/Array ( [42] => No one ) 25/Array ( [43] => So What ) 26/Array ( [44] => titolo mp3 ) 27/Array ( [45] => prova 1 )

    ma noto che l'id immagine è quello contenuto tra parentesi non quello prima del /


  • User

    <?php

    $mysqli = new mysqli("$host", "$username", "$psw", "$dbname");
    $query = "SELECT dzdom_musicbattle_media.image_id, dzdom_musicbattle_media.title FROM dzdom_musicbattle_media WHERE dzdom_musicbattle_media.user_id=42";
    $result = $mysqli->query($query);
    $aElement = array();
    while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
    $img = $row[0];
    $titolo = $row[1];
    $aElement[] = array($img => $titolo);
    }

    foreach($aElement as $k =>$value){
    foreach(value as $kV => $vV){
    echo $kV.'/'.$vV."\n";
    }
    }

    ?>

    credo che ora debba funzionare


  • User Newbie

    Funziona tutto grazie mille!!!!


  • User

    bene 🙂