Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62

    apertura dialog all'interno del foreach

    Ciao, avrei bisogno di una mano.

    Devo scorrere un array generato da checkbox dinamiche e a seguito di una select aprire una dialog se il dato reperito ($ack) è diverso da "vuoto", altrimenti aprirne un'altra.

    Bi posto il codice che ho scritto:
    codice:
        
    
    foreach ($esigenzamultipla as $value =>$id){    
             
       $querychbk = "SELECT ack FROM sc_events WHERE id = $id";    
                        $result = $db->query($querychbk) or die ("Query failed: " .mysql_error());
                        //estraggo i dati
                        while(list (
    				   $ack   
                      
                       ) = $result->fetch_array()){
    
    if ($ack!=""){
           include("prova.php");
      }
      else{
      include("est.php"); 
      }
    
    }
    }

    Ora il controllo funziona pero' non mi apre una sola dialog, ma tante quante sono le checkbox selezionate!!!!!!

    A me servirebbe che quando il controllo su l'array trova ack!="" apra la dialog e poi si fermi... non continui... se invece non lo trova perchè $ack è sempre =="" apra l'altra dialog

    MI potete aiutare ????'

    Grazie!!!

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    io fare una osa del genere
    Codice PHP:
    $querychbk "SELECT ack FROM sc_events WHERE ";
    $fid=false;
    foreach (
    $esigenzamultipla as $value =>$id){    
             
        if(!
    fid)
        {
                
    $querychbk.="id=$id ";
                
    $fid=true;
        }
        else
        {
               
    $querychbk.="or id=$id ";
        }
    }   

        if(
    $fid){
           
    $result $db->query($querychbk) or die ("Query failed: " .mysql_error());
                        
    //estraggo i dati
           
    if(list (   $ack    ) = $result->fetch_array()){

               if (
    $ack!=""){
                   include(
    "prova.php");
               }
               else{
                include(
    "est.php"); 
              }
           }
         }
         else
            
    //nessun id selezionato 

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62
    Ciao, Grazie per la risposta!!!

    ora ci provo...

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62
    l'if al posto del while nn l'avevo mai visto

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62
    ....ho provato a variar il codice pero' cosi' non mi apre le dialog...

  6. #6
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Immagino to gestisca con ajax la chiamata vista la necessita di avere dei dialogs...

    Io farei una cosa divers

    - estrazione dati
    - scorri i dati e controlla
    - inserisci gli errori in array temporaneo
    - restituisci i risultati
    - in js fai apparire i dialogs...

    Se devi far apparire un dialog a cascata per ogni errore che trovi, sappi che l'interazione ajax-php e' particolare e non e' che ad errore segnali e poi continui non puoi gestirla cosi' come credo di aver capito sia tua intenzione.

    io farei come sopra oppure



    - estrazione dati
    - scorri i dati e controlla
    - se errore termina ciclo e segnala nella response un ble json con tutti i dati dell'errore
    - in js intercetta il risultato e richiedi quanto necessario a correggere l'errore
    - corretto l'errore riavvia la procedura.

    Almeno secondo quanto ho capito.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62
    Le dialog in realtà le richiamo in php dall'input del form ....del tipo .. se $variabile è presente allora apri dialog.

    Inoltre il problema è proprio che la dialog NON deve aprirsi a cascata... ma su una selezione di 20 checkbox, devo controllare se nell'array è presente la variabile $ack !=""" ... e se è presente stoppare il controllo dell'array e aprire una delle due dialog.

    Se invece $ack non è mai !="" apri un'altra dialog...

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62
    dunque... forse ho risolto inserendo un exit; all'interno di questo controllo

    codice:
    if ($ack!=""){
           include("prova.php");
      exit;   
      }
      else{
      include("est.php"); 
      }
    Sembra funzionare.

  9. #9
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    mmmmm fose stiamo parlando di 2 cose diverse.

    Cosa intendi per "dialog" ?
    perche di solito si usa js per gestire i dialogs.

    Hai un esempio fisico di questi "dialogs" cosi' riesco a farmi un'idea piu' precisa ?

    Grassie

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    62
    Utilizzo la Dialog modale di jquery ui.

    Solo che l'apertura è stata cambiata... in questo momento non si apre piu' con il classico id='open', ma si apre con un post da un form per un problema di refresh automatico della pagina.

    Probabilemente funziona anche con l'apertura standrd, ma devo verificare.

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.