Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Passaggio variabili e interazioni con form

    Ciao a tutti e da 2 giorni che ci sto dietro e ancora non trovo la soluzione.

    Premetto che la pagina in questione non la ho scritta io ma un altro programmatore che si è liceniato da qualche mese ed ora devo finirla io.

    Il problema e che quando si va sul form di ricerca

    Codice PHP:

    $resQ 
    = @mysql_query($sqlQ);
    if (!
    $resQerroreQuery($sqlQ__file____line__);
    echo 
    "<table style='width: 100%'><tr>
    <td style='width: 50%;vertical-align: top;'>

    [b] Cerca Artista[/b]
     <form method='post' > <INPUT type='TEXT' name='cercaArtista' maxlength='30' size='30' value=''> <input type='submit' value='Cerca'> </form> 
    "

    dopo la ricerca i risultati vengono corretti ed inseriti nel secondo menù a tendina
    Codice PHP:
      $groupselect '[b]Scegli un altro artista in questo gruppo[/b]

                  <select name="colA_id" onChange="location=this.options[this.selectedIndex].value;">
                  <option>-------</option>'
    .$groupoptions.'</select>
    '
    ;
            echo 
    $groupselect
    da qui quando si clicca un nome dovrebbe caricarlo a video sulla pagina

    Ma questo non avviene perche mi prende sempre l'ultimo risultato della query e non quello selezionato.

    se invece di inziore con il form di ricerca libera inizio con il primo menù a tendina tutto funzione bene e senza errori e quando mi carica i risulttati sul 2° menu quello che seleziono mi stampa a video


    Qui di seguito il codice completo della parte di pagina in questione

    Codice PHP:

    $resQ 
    = @mysql_query($sqlQ);
    if (!
    $resQerroreQuery($sqlQ__file____line__);
    echo 
    "<table style='width: 100%'><tr>
    <td style='width: 50%;vertical-align: top;'>

    [b] Cerca Artista[/b]
     <form method='post' > <INPUT type='TEXT' name='cercaArtista' maxlength='30' size='30' value=''> <input type='submit' value='Cerca'> </form> 
    "
    ;

          echo 
    "

    [b]Gruppi di possibili artisti duplicati[/b]

          <select name='groupA_id' onChange='location=this.options[this.selectedIndex].value;'>
          <option>-------</option>"
    ;
    $cnt=1;     
    while (
    $item=mysql_fetch_array($resQ)) {
      if (
    $_REQUEST['groupA_id']==$item['artista_id']) {
        
    $groupsel=$item;
        
    $selected="selected";
      }  else 
    $selected="";     
        
    echo 
    "<option value=\"$phpself?groupA_id={$item['artista_id']}&cerca=".$cerca."&artistaA_id={$item['artista_id']}&artistaB_id={$_REQUEST['artistaB_id']}\" $selected>".$item['num']."-".trim(stripslashes($item['nome_cognome']))." / ".$categories[$item['categoria_id']]." / (".stripslashes($item['artista_id']).")</option>\n";
    }  
    echo 
    "</select>
    "
    ;

    // trova gli artisti simili e costruisce il <select> per gli artisti dello stesso gruppo soundex
    if (strlen($_REQUEST['artistaA_id'])>or ($cerca != '') ){
             if(
    $cerca!='') {
                
    $sql="SELECT *, soundex(replace(pagina_artista,'_','')) as sound FROM $table WHERE (nome_cognome LIKE ('%$cerca%'));";
                } else {
                
    $sql="SELECT *, soundex(replace(pagina_artista,'_','')) as sound FROM $table WHERE soundex(replace(pagina_artista,'_',''))='{$groupsel['sound']}'";            
            }
            
    $res = @mysql_query($sql);
            if (!
    $reserroreQuery($sql__file____line__);
            while (
    $item=mysql_fetch_assoc($res)){  
                
    // prende tutti i dati dell'item selezionato    
                
    if ($item['artista_id']==$_REQUEST['artistaA_id']) {
                  
    $selected="selected";
                  
    $itemselA=$item;
                } 
                else 
    $selected="";
                
                if (
    $cerca!='')  
                {
                
    $ID_artista=$item['artista_id'];
                
    $itemselA=$item;
                
    //echo $item ;
                
    }

                
                if (
    $item['artista_id']!=$_REQUEST['artistaA_id']) {      
                  
    $similar.= "<tr bgcolor=\"$color\"><td><ul>[*]<a href=\"$phpself?groupA_id={$_REQUEST['groupA_id']}&cerca=".$cerca."&artistaA_id={$_REQUEST['artistaA_id']}&artistaB_id={$item['artista_id']}\">".stripslashes($item['nome_cognome'])." / {$item['city']} / ".$categories[$item['categoria_id']]." ({$item['artista_id']})</a>[/list]</td></tr>";
                }
                
                if (
    $_REQUEST['artistaA_id']==$item['artista_id']) $selected="selected";
                
    $groupoptions.="<option value=\"$phpself?groupA_id={$_REQUEST['groupA_id']}&cerca=".$cerca."&artistaA_id={$item['artista_id']}&artistaB_id={$_REQUEST['artistaB_id']}\" $selected>".trim(stripslashes($item['nome_cognome']))." / ".$categories[$item['categoria_id']]." / (".stripslashes($item['artista_id']).")</option>";
            }
              
            
    $groupselect '[b]Scegli un altro artista in questo gruppo[/b]

                  <select name="colA_id" onChange="location=this.options[this.selectedIndex].value;">
                  <option>-------</option>'
    .$groupoptions.'</select>
    '
    ;
            echo 
    $groupselect;                


     

    if (isset(
    $itemselA)) {
         
    extract($itemselA);
        
    // recupera le news associate
        
    unset($news_corr);
        
    $sql="SELECT * FROM news n LEFT JOIN newscatnome_artisti na ON na.newsId=n.newsId WHERE na.artista_id=$artista_id";    
        
    $res = @mysql_query($sql);
        if (!
    $reserroreQuery($sql__file____line__);
        while (
    $news=mysql_fetch_array($res)) $news_corr.="[*]{$news['dataInizio']} - ".stripslashes($news['newsTitolo'])." ({$news['newsId']}) ";
        
    $news_corr="<ul>$news_corr[/list]";    
        
        
    // recupera gli articoli del magazine associati
        
    unset($mag_corr);
        
    $sql="SELECT * FROM a_magazine m LEFT JOIN magazine_artisti ma ON ma.magazine_id=m.magazine_id WHERE ma.artista_id=$artista_id";    
        
    $res = @mysql_query($sql);
        if (!
    $reserroreQuery($sql__file____line__);
        while (
    $article=mysql_fetch_array($res)) $mag_corr.="[*]{$article['data_pubblica']} - ".stripslashes($article['titolo'])." ({$article['magazine_id']}) ";
        
    $mag_corr="<ul>$mag_corr[/list]";   
             
    ?> 
    Grazie a tutti
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  2. #2
    Problema risolto :

    è bastato togliere il controllo if sulla variabile cerca e impostare le variabilli di ambiente tutte uguali
    Di seguito la soluzione

    Codice PHP:

        $res 
    = @mysql_query($sql);
            if (!
    $reserroreQuery($sql__file____line__);
            while (
    $item=mysql_fetch_assoc($res)){  
                
    // prende tutti i dati dell'item selezionato    
                
    if ($item['artista_id']==$_REQUEST['artistaA_id']) {
                  
    $selected="selected";
                  
    $itemselA=$item;
                } 
                else 
    $selected="";
                
              
    /*  // questa parte è stata cancellata.

    if ($cerca!='')  
                {
                $ID_artista=$item['artista_id'];
                $itemselA=$item;
                echo $ID_artista ;
               } */ 
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

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.