Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: query da database

  1. #1

    query da database

    ciao, premetto che sono alle prime armi con php.
    sto costruendo un form per l'inserimento di dati, ho un database con delle tabelle specifiche per ogni casella
    ho provato cosi ma non capisco dove sto sbagliando:
    form
    codice:
    <td span class="tah11">Nato a*</span>
    <select name="citta" size="1" class="tah11" id="com_nascita" tabindex="3">
    
    
    <?php
    $stringa_query="select * from citta";
    $elenco_citta=mysql_query($stringa_query) or die(mysql_error());
    while($row_citta=mysql_fetch_array($elenco_citta)){
    $id_citta=$row_citta[id];
    $nome_citta=$row_citta[nome_citta];
    echo "<option value=\"$id_citta\">$nome_citta</option>\n";
    }
    ?> 
    
        
        </select> </td>
    tabella db
    codice:
    --
    -- Struttura della tabella `citta`
    -- 
    
    CREATE TABLE `citta` (
      `id_citta` int(11) NOT NULL auto_increment,
      `citta` varchar(100) NOT NULL,  
      `provincia` varchar(3) NOT NULL,
    
      PRIMARY KEY  (`id_citta`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=8113 ;
    in pratica dovrebbe visualizzarmi tutte le citta presenti nella tabella
    potete aiutarmi per favore
    grazie
    ciao
    gigi
    gigi

  2. #2
    Scusa, ma mi sa che non ti è chiaro:
    mysql_fetch_array crea un array associativo e numerico con le chiavi associative = al nome dei campi del DB.

    Per questo devi fare

    $stringa_query="select * from citta";
    $elenco_citta=mysql_query($stringa_query) or die(mysql_error());
    while($row_citta=mysql_fetch_array($elenco_citta)) {
    $id_citta=$row_citta[id_citta];
    $nome_citta=$row_citta[citta];
    echo "<option value=\"$id_citta\">$nome_citta</option>\n";
    }

  3. #3
    ho capito, quello che non capisco è perche non visualizzo niente
    cioè invece di avere una casella a discesa popolata dall'elenco ho una casella a discesa sottilissima e vuota
    gigi

  4. #4
    mmm ma in Mysql query non gli indichi il linkreference al DB, dove glielo hai settato e gliel'hai settato in modo corretto?

  5. #5
    io ho scritto cosi:
    codice:
    <?php
    $connessione=mysql_connect("localhost", "root", "") or die(mysql_error());
    $selezione_db=mysql_select_db("etaimpiantimed") or die(msyql_error());
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <head>
    poi di seguito c'è il resto della pagina fino al form
    codice:
     <fieldset style="size:auto">
    <legend class="ver9">ATTENZIONE</legend>
    	 <table width="850" border="0"><tr>
          <td height="41" class="tah11"><span class="testo"> Compila con i tuoi dati la form sottostante, il tuo profilo verra
            registrato nei nostri archivi e  provvederemo a contattarti non appena si
            apriranno selezioni idonee alle tue caratteristiche.
    
           
    
             I campi con l'asterisco * sono obbligatori</span></td>
    	  </tr>
         </table>
    </fieldset>
    	
    
    	 <fieldset style="size:auto">
    <legend class="ver9">DATI PERSONALI</legend>
    <table>
    <form action="http://127.0.0.1/FormTools1_5_1/process.php" onSubmit="return validazione();" method="post" enctype="multipart/form-data">
    <input type="hidden" name="form_tools_initialize_form" value="1" />
    <input type="hidden" name="form_tools_form_id" value="1" />
    
    
    <td span class="tah11">Nome*</span>
    <input name="nome" id="nome" class="tah11" type="text" tabindex="1"> </td>
    <td span class="tah11">Cognome*</span>
    <input name="cognome" id="cognome" class="tah11" type="text" tabindex="2"> </td>
    <td span class="tah11">Nato a*</span>
    <select name="citta" size="1" class="tah11" id="com_nascita" tabindex="3">
    <?php
    $stringa_query="select * from citta";
    $elenco_citta=mysql_query($stringa_query) or die(mysql_error());
    while($row_citta=mysql_fetch_array($elenco_citta)){
    $id_citta=$row_citta[id];
    $nome_citta=$row_citta[nome_citta];
    echo "<option value=\"$id_citta\">$nome_citta</option>\n";
    }
    ?>     
        </select> </td>
    il database ' etaimpiantimed' è composto dalle seguenti tabelle:
    - categorie_protette
    - citta
    - nazioni
    - nazioni_ue
    - patente
    - province
    - stato_civile
    gigi

  6. #6
    Ma riesci ad interrogare il database da qualche parte?

    E comunque, potresti usare il tag BBcode PHP quando posti del codice PHP?

  7. #7
    @artorius
    codice:
    E comunque, potresti usare il tag BBcode PHP quando posti del codice PHP?
    scusa
    codice:
    Ma riesci ad interrogare il database da qualche parte?
    io sto testando in locale il tutto con easyphp, ho fatto svariate prove, e in qualcuna di queste il database mi rispondeva, peccato che lo faceva nella casella sbagliata
    porta pazienza ma sono un novizio, comunque se non sbaglio:

    il linkreference al DB:

    [PHP]<?php
    $connessione=mysql_connect("localhost", "root", "") or die(mysql_error());
    $selezione_db=mysql_select_db("etaimpiantimed") or die(msyql_error());
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <head>
    /PHP]

    interrogazione al db:

    Codice PHP:
    <fieldset style="size:auto">
    <legend class="ver9">ATTENZIONE</legend>
         <table width="850" border="0"><tr>
          <td height="41" class="tah11"><span class="testo"> Compila con i tuoi dati la form sottostante, il tuo profilo verra
            registrato nei nostri archivi e  provvederemo a contattarti non appena si
            apriranno selezioni idonee alle tue caratteristiche.

           

             I campi con l'asterisco [b]*[/b] sono obbligatori</span></td>
          </tr>
         </table>
    </fieldset>
         

         <fieldset style="size:auto">
    <legend class="ver9">DATI PERSONALI</legend>
    <table>
    <form action="http://127.0.0.1/FormTools1_5_1/process.php" onSubmit="return validazione();" method="post" enctype="multipart/form-data">
    <input type="hidden" name="form_tools_initialize_form" value="1" />
    <input type="hidden" name="form_tools_form_id" value="1" />


    <td span class="tah11">Nome *</span>
    <input name="nome" id="nome" class="tah11" type="text" tabindex="1"> </td>
    <td span class="tah11">Cognome *</span>
    <input name="cognome" id="cognome" class="tah11" type="text" tabindex="2"> </td>
    <td span class="tah11">Nato a *</span>
    <select name="citta" size="1" class="tah11" id="com_nascita" tabindex="3">
    <?php
    $stringa_query
    ="select * from citta";
    $elenco_citta=mysql_query($stringa_query) or die(mysql_error());
    while(
    $row_citta=mysql_fetch_array($elenco_citta)){
    $id_citta=$row_citta[id];
    $nome_citta=$row_citta[nome_citta];
    echo 
    "<option value=\"$id_citta\">$nome_citta</option>\n";
    }
    ?>     
        </select> </td>
    tabella db:citta

    id_citta int(11) autoincrement primaria
    citta varchar(100)
    provincia varchar(3)
    gigi

  8. #8
    senti ora provo a farti un esempio funzionante, provalo e dimmi se va:

    Codice PHP:
    <?php
    $connessione
    =mysql_connect("localhost""root""") or die(mysql_error());
    $selezione_db=mysql_select_db("etaimpiantimed"$connessione) or die(msyql_error());
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <head>

    ...
    ...

    <fieldset style="size:auto">
    <legend class="ver9">ATTENZIONE</legend>
         <table width="850" border="0"><tr>
          <td height="41" class="tah11"><span class="testo"> Compila con i tuoi dati la form sottostante, il tuo profilo verra
            registrato nei nostri archivi e  provvederemo a contattarti non appena si
            apriranno selezioni idonee alle tue caratteristiche.

           

             I campi con l'asterisco [b]*[/b] sono obbligatori</span></td>
          </tr>
         </table>
    </fieldset>
        

         <fieldset style="size:auto">
    <legend class="ver9">DATI PERSONALI</legend>
    <table>
    <form action="http://127.0.0.1/FormTools1_5_1/process.php" onSubmit="return validazione();" method="post" enctype="multipart/form-data">
    <input type="hidden" name="form_tools_initialize_form" value="1" />
    <input type="hidden" name="form_tools_form_id" value="1" />


    <td span class="tah11">Nome *</span>
    <input name="nome" id="nome" class="tah11" type="text" tabindex="1"> </td>
    <td span class="tah11">Cognome *</span>
    <input name="cognome" id="cognome" class="tah11" type="text" tabindex="2"> </td>
    <td span class="tah11">Nato a *</span>
    <select name="citta" size="1" class="tah11" id="com_nascita" tabindex="3">
    <?php
    $stringa_query
    ="select * from citta";
    $elenco_citta=mysql_query($stringa_query$connessione) or die(mysql_error($connessione));
    while(
    $row_citta=mysql_fetch_array($elenco_citta)){
    $id_citta=$row_citta['id_citta'];
    $nome_citta=$row_citta['citta'];
    echo 
    "<option value=\"$id_citta\">$nome_citta</option>\n";
    }
    ?>     
        </select> </td>

  9. #9
    @artorius
    grazie apprezzo la tua pazienza

    stanotte, visto che ho dovuto sistemare fedora, ho smanettato un po, per niente ma mi è venuto un dubbio:
    se faccio la query citta cosi non c'è niente
    Codice PHP:
    <td span class="tah11">Nato a *</span>
    <select name="citta" size="1" class="tah11" id="com_nascita" tabindex="3">
    <?php
    $stringa_query
    ="select * from citta";
    $elenco_citta=mysql_query($stringa_query$connessione) or die(mysql_error($connessione));
    while(
    $row_citta=mysql_fetch_array($elenco_citta)){
    $id_citta=$row_citta['id_citta'];
    $nome_citta=$row_citta['citta'];
    echo 
    "<option value=\"$id_citta\">$nome_citta</option>\n";
    }
    ?>     
        </select> </td>
    se invece faccio la query province ho tutto
    Codice PHP:
    <td span class="tah11">Provincia di*</span>
    <select name="provincia" size="1" class="tah11" id="nato_provincia" tabindex="4">
    <?php
    $stringa_query
    ="select * from province";
    $elenco_province=mysql_query($stringa_query) or die(mysql_error());
    while(
    $row_province=mysql_fetch_array($elenco_province)){
    $id_provincia=$row_province[id];
    $nome_provincia=$row_province[nome_provincia];
    echo 
    "<option value=\"$id_provincia\">$nome_provincia</option>\n";
    }
    ?>
    </select></td>
    praticamente sono la stessa cosa cambiano solo i riferimenti 'province, provincia->citta'
    allora ho pensato vuoi vedere che ho cannato le tabelle
    io le allego per favore puoi dargli un occhiata
    grazie ciao
    http://chiabgigi.altervista.org/_zip/citta_comuni.sql
    gigi

  10. #10
    e ci credo la tabella citta ha i campi che si chiamano id_comune e comune non id_citta e citta

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.