Pagina 2 di 8 primaprima 1 2 3 4 ... ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 71
  1. #11
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Ah, ecco, quindi la seconda immagine era la query eseguita direttamente sul DB.

  2. #12
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    221
    si esatto...mi avevano detto di provare la query direttamente nel phpmyadmin

  3. #13
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    221
    ma giusto per velocizzarmi

  4. #14
    per non farvi diventare matti, sto aiutando il giovanotto qui http://forum.html.it/forum/showthrea...readid=2956045 per la parte db

    La query è su 2 tabelle 1..n, per cui è corretto che possa riportare

    inserim1 -- commento1
    inserim1 -- commento2
    inserim1 -- commento3

    ora la cosa è semplice: il campo text box di inserim1 deve essere visualizzato una volta sola. Non lavoro di solito con PHP, ma saranno al massimo un paio di IF, solo che Teotone non sa dove metterle

  5. #15
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Secondo me puoi fare due cose:
    1. lasci la query così ed aggiungi order by markers.id. Quando fai il ciclo ti tieni una variabile con l'id precedente. Se l'id attuale è uguale al precedente, prendi solo il commento altrimenti tutto
    Codice PHP:
    $prev_id '';
    while(
    $row = ...){
      if (
    $prev_id != $row['id']){
          
    //Stampi markers + comment
      
    }else{
          
    //Stampi solo comment
      
    }
      
    $prev_id $row['id'];

    2. Ti fai due query distinte: una per markers e una per comments.
    Quella per comments te la prepari così:
    Codice PHP:
    $query "SELECT * FROM comments";.
    $comments mysqli_query($conn$query);
    $association = [];
    while(
    $row mysqli_fetch_assoc($conn$comments)){
        if(!isset(
    $association[$row['idcomment']])){
            
    $association[$row['idcomment']] = [];
        }
        
    $association[$row['idcomment']][] = $row

    Così poi, quando stampi markers:
    Codice PHP:
    $query "SELECT * FROM markers";.
    $markers mysqli_query($conn$query);
    while(
    $row = ...){
        
    // echo di markers
        
    if(isset($association[$row['id']])){
           foreach(
    $association[$row['id']] as $comment){
               
    // echo di comment
           
    }
        }

    Ultima modifica di boots; 17-07-2017 a 10:49

  6. #16
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    221
    io terrei la query così com'è è solo che per me il tuo codice è troppo difficile..non riesco a farlo funzionare.

  7. #17
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Cose più semplici non mi vengono in mente...prova a vedere se qualcun altro ha un idea migliore.

    PS: Con il primo metodo potresti aver qualche problemino se hai una struttura html annidata:
    codice:
    <div id="marker">
       <div>
          marker 
       </div>
       <div>
           commento 1
           commento 2
           ...
           commento n
       </div>
    </div>
    Perchè non sai quando chiudere il div "marker" e quindi devi "giocare" con $prev_id e l'id attuale

  8. #18
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    221
    qualcuno ha un'idea più semplice o mi scrive precisamente la prima soluzione perchè forse faccio qualche errore?grazie mille..mi manca davvero solo questo passaggio poi ho finito

  9. #19
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    221
    ma poi è giusto questo punto alla fine?
    $query = "SELECT * FROM markers";.

  10. #20
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    221
    ok ho tolto il puntino alla fine e funziona. Grazie mille..mi sei stato davvero di aiuto..ps un consiglio quando scrivete i codici fate attenzione perchè se trovate un ignorante come ME....copia anche l'errore..grazie mille ancora..e grazie anche a OPTIME

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.