Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Doppia ricerca nel db

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    100

    Doppia ricerca nel db

    Ciao a tutti
    ho una tabella così composta:

    Id | a | b | c | d |......con 50 campi

    con due form vorrei estrarre il valore dell' Id 10 nel campo 45 come posso fare?
    Sono riuscito a fare la selezione per l'id ma non quella per il campo. Vi posto il codice.
    Codice PHP:
           <div align="left"></div> 
            <form method= "post" action="2test.php">
              <td width="150"><div align="center" class="style8">[b]<font size="2">ID</font> </div></td>
              <td width="150"><div align="center" class="style8">[b]<font size="2">PROVE</font></div></td>
                   
            <tr>
              <td><div align="center">
                <input type= "text"  name="Id"            size="20">
              </div></td>
              <td><div align="center">
                <input type= "text"  name="Prova"            size="20">
              </div></td>
                  
            
            </tr>
      <tr><input type="submit" name="Submit" value="CERCA" /></tr>
       <hr width="900">
      
      <?php

    $Id 
    $_REQUEST["Id"];
    $Prova $_REQUEST["Prova"];

     
    ?>
      <table width="870" border= "1" align="center">
        

        <tr>
          
          <td width="50" bgcolor="#E1EBBB"><div align="center"><font color="#000066">[b]ID [/b]</font></div></td>
          <td width="200" bgcolor="#E1EBBB"><div align="center"><font color="#000066">[b]PROVA[/b]</font></div></td>
           </tr>
        <?php
    $db 
    mysql_connect("localhost","root","");
    mysql_select_db("test"$db);

    function 
    getQuery($Id$Prova) {
        
    $query "SELECT * FROM salti WHERE  ";
        
       if (!empty(
    $Id)) {
            
    $query .= "Id LIKE '$Id' AND ";
        } 
        
        
    $query .= "1 = 1";
        
        return 
    $query;
    }
        
    $result mysql_query(getQuery($Id$Prova), $db) or die ("Errore: ".mysql_error());

    while(
    $myrow=mysql_fetch_array($result))

    echo  <<<EOF

    <td>[url="apri_dettagli.php?ID=
    $myrow[Id]"]$myrow[Id][/url]</td>
    <td>
    $myrow[Prova]</td>
    </tr>

    EOF;
          
    ?>
    Grazie

  2. #2
    Utente di HTML.it L'avatar di P75
    Registrato dal
    Jul 2001
    Messaggi
    41
    Codice PHP:
    SELECT nomecampo45 FROM salti WHERE id=10
    Specifica il nome del campo che vuoi ottenere al posto di *.
    Se devi ricevere il valore corrispondente ad un solo id non usare LIKE, ma il simbolo =.
    Ricordati di validare i dati quando li acquisici... e di sanitizzarli quando li mandi in output.

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    100
    Come richiamo i valori recuperati dal form 'Prova' nella select

    Codice PHP:
    $result =mysql_query("SELECT ????? FROM salti Where ID=$Id); 
    e nella visualizzazione dei dati?

    Codice PHP:
    echo  "<tr>

    <td>
    $myrow[Id]</td>
    <td>
    $myrow[??????????]</td>

    </tr>"

    ti rinvio il codice ristretto.

    Codice PHP:
    <?php

    $Id 
    $_REQUEST["Id"];
    $Prova $_REQUEST["Prova"];

     
    ?>
      <table width="870" border= "1" align="center">
        

        <tr>
          
          <td><div align="center"><font color="#000066">[b]ID [/b]</font></div></td>
          <td><div align="center"><font color="#000066">[b]PROVA [/b]</font></div></td>
           
        </tr>
        <?php
    $db 
    mysql_connect("localhost","root","");
    mysql_select_db("test"$db);
    $result =mysql_query("SELECT * FROM salti Where ID=$Id);

     while(
    $myrow=mysql_fetch_array($result))

    echo  
    "<tr>

    <td>
    $myrow[Id]</td>
    <td>
    $myrow[??????]</td> // come richiamo il valore della $Prova

    </tr>"
    ;
    ?>

    Grazie

  4. #4
    Utente di HTML.it L'avatar di P75
    Registrato dal
    Jul 2001
    Messaggi
    41
    mysql_fetch_array, di default non ritorna un array associativo, quindi dovresti - partendo da 0 - riferirti al numero della colonna che desideri.
    http://www.php.net/manual/en/functio...etch-array.php

    Se vuoi come dato di ritorno un array associativo dovresti specificare il type in mysql_fetch_array o utilizzare mysql_fetch_assoc ()

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    100
    Non ci sono riuscito, mi faresti per cortesia un esempio riferito a questa tabella

    Id | 12 | 17 | 41 | 140 ........... 50 colonne di questo tipo dove l'intestazione della colonna è un numero.

    1 | 10 | 120 | 30 | 28
    2 | 15 | 160 | 60 | 138
    3 | 20 | 140 | A50 | 58

    Ho due form in uno inserisco l'Id e nell' altro il valore di una delle 50 colonne.

    es. 1° Form Id = 3 2° Form 41 .

    Dovrei visualizzare il risultato A50, come faccio?

    Grazie per la disponibilità.

  6. #6
    SELECT 41 FROM tabella WHERE id = '3'
    Ciao!

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    100
    Mi spiegheresti come lo applichi a questo codice?

    Codice PHP:
    <?php 

    $Id 
    $_REQUEST["Id"]; // recupero dato dal form Id
    $Prova $_REQUEST["Prova"]; // recupero dato dal form Prova

     
    ?> 
      <table width="870" border= "1" align="center"> 
        
     
        <tr> 
           
          <td><div align="center"><font color="#000066">[b]ID [/b]</font></div></td> 
          <td><div align="center"><font color="#000066">[b]PROVA [/b]</font></div></td> 
            
        </tr> 
        <?php 
    $db 
    mysql_connect("localhost","root",""); 
    mysql_select_db("test"$db); 
    $result =mysql_query("SELECT ????????? FROM salti Where ID=$Id); 

     while(
    $myrow=mysql_fetch_array($result)) 

    echo  
    "<tr> 

    <td>
    $myrow[Id]</td> 
    <td>
    $myrow[??????]</td> // come richiamo il valore della $Prova 

    </tr>"

    ?>
    Grazie

  8. #8
    Codice PHP:
    <?php 

    $Id 
    $_REQUEST["Id"]; // recupero dato dal form Id
    $Prova $_REQUEST["Prova"]; // recupero dato dal form Prova

     
    ?> 
      <table width="870" border= "1" align="center"> 
        
     
        <tr> 
           
          <td><div align="center"><font color="#000066">[b]ID [/b]</font></div></td> 
          <td><div align="center"><font color="#000066">[b]PROVA [/b]</font></div></td> 
            
        </tr> 
        <?php 
    $db 
    mysql_connect("localhost","root",""); 
    mysql_select_db("test"$db); 
    $result =mysql_query("SELECT $Prova FROM salti WHERE ID='$Id'" ); 

    while(
    $myrow=mysql_fetch_array($result)) 
    {
       echo 
    "<tr>
          <td>
    $myrow[Id]</td>
          <td>
    $myrow[Prova]</td>
       </tr>"

    }
    ?>
    Ciao!

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    100
    Non riesco a visualizzare il valore del campo inserito nel form prova.
    Ho provato così ma non funziona. Booooooo!!!!!

    Codice PHP:
     while($myrow=mysql_fetch_array($result))  

       echo 
    "<tr> 
          <td>
    $myrow[Id]</td> 
          <td>
    $myrow['$Prova']</td> 
       </tr>"
    ;  

    ?> 
    Grazie

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    100
    Qualcuno saprebbe dirmi dove è l'errore?

    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.