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

    [MySQL+PHP]Dati dal db per inserirli in un select

    Ciao a tutti

    Sto costruendo un piccolo gestionale in azienda per il controllo della movimentazione dei carichi. Ho creato una sezione in cui, compilando un form, inserisco i dati relativi ai conducenti delle ditte che mi effettuano i trasporti. In questo form, presente nella pagina vet_con_add.php, c'è un campo select (menù a tendina) dove seleziono il nome della ditta dei trasporti. Questo menù a tendina non lo compilo io, ma lo voglio far compilare a php, interrogando il db mysql.
    Il problema mio è come far "scrivere" a php, più voci nella tendina, nel caso in cui nella tabella in cui vado a prendere tutti i nomi delle ditte di trasporti, ce ne siano più di 1

    vet_con_add.php
    Codice PHP:
    <?php
    require("config.php");
    $conn mysql_connect(SQL_HOSTSQL_USERSQL_PASS) or die("Impossibile connettersi al database MySQL. " mysql_error());
    mysql_select_db(SQL_DB$conn);

    $query "SELECT id, rag_sociale FROM vettori";
    $result mysql_query($query)
        or die(
    mysql_error());

    while (
    $row mysql_fetch_array($result)) {
        
    extract($row);
        echo 
    '<select name="vet_select" size="10">';
                 echo 
    '<option selected="selected" value="">-------------</option>';
                 echo 
    '<option value="'$id'">'$rag_sociale'</option>';
        }

    ?>
    Questo è quello che la mia mente ha saputo fare. Sbaglio?

  2. #2
    Codice PHP:
    <?php
    require("config.php");
    $conn mysql_connect(SQL_HOSTSQL_USERSQL_PASS) or die("Impossibile connettersi al database MySQL. " mysql_error());
    mysql_select_db(SQL_DB$conn);

    $query "SELECT id, rag_sociale FROM vettori";
    $result mysql_query($query) or die(mysql_error());
    if (
    count($rows)) {
      echo 
    '<select name="vet_select" size="10">';
      foreach (
    $rows as $row) {
         echo 
    '<option selected="selected" value="">-------------</option>';
         echo 
    '<option value="'.$row['$id'].'">'.$row['$rag_sociale'].'</option>';
      }
      echo 
    '</select>';
    }
    ?>

  3. #3
    Grazie Emulman.
    Ho copia-incollato ed eseguito lo script, mi carica tuta la pagina, prima e dopo del select tutto ok. Il select invece non appare proprio ... che sia da inserire i segni / \ nella parte html dentro gli echo?

  4. #4
    non credo, il select viene visualizzato se la query ha restituit dei record, se non ce ne è almeno uno allor anon visualizza nulla..

  5. #5
    Originariamente inviato da Emulman
    non credo, il select viene visualizzato se la query ha restituit dei record, se non ce ne è almeno uno allor anon visualizza nulla..
    Concordo pienamente ed ho anche controllato. Per sicurezza ho rifatto il database e la tabella, controllato che i nomi dei campi coincidessero tutti quanti e ho riempito la tabella vettori, manualmente da phpmyadmin, ma non mi visualizza nulla.

    Non è che in qualche modo $row deve andare a cercare i valori in $result? Parlo da inesperto eh

  6. #6
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Codice PHP:
    <?php
    require("config.php");
    $conn mysql_connect(SQL_HOSTSQL_USERSQL_PASS
    or die(
    "Impossibile connettersi al database MySQL. " mysql_error());
    mysql_select_db(SQL_DB$conn);

    $query "SELECT id, rag_sociale FROM vettori";
    $result mysql_query($query) or die(mysql_error());
    if (
    count($result)) { // c'era l'errore qua 
      
    echo '<select name="vet_select" size="10">';
      foreach (
    $result as $row) { // e anche qua
         
    echo '<option selected="selected" value="">-------------</option>';
         echo 
    '<option value="'.$row['$id'].'">'.$row['$rag_sociale'].'</option>';
      }
      echo 
    '</select>';
    }
    ?>
    Forse c'è un errore nel nome della variabile del codice postato da Emulman, $rows doveva essere $result. Prova un po'

  7. #7
    Originariamente inviato da clasku
    Forse c'è un errore nel nome della variabile del codice postato da Emulman, $rows doveva essere $result. Prova un po'
    avevo già provato ed il risultato è una cella vuota che non assomiglia nemmeno lontanamente ad un select a tendina

    Allego una img del risultato.... non ne vengo più fuori
    Immagini allegate Immagini allegate

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Ti scrivo come farei io... (assolutamente non testato)


    Codice PHP:
    <?php 
    require("config.php"); 
    $conn mysql_connect(SQL_HOSTSQL_USERSQL_PASS
    or die(
    "Impossibile connettersi al database MySQL. " mysql_error()); 
    mysql_select_db(SQL_DB$conn); 

    $query "SELECT id, rag_sociale FROM vettori"
    $result mysql_query($query) or die(mysql_error()); 
    $numrows=mysql_num_rows($result);
    if (
    $numrows != 0) { 
      echo 
    '<select name="vet_select" size="10">'
      echo 
    '<option selected="selected" value="">-------------</option>'
      while (
    $rows=mysql_fetch_array) {  
         
         echo 
    '<option value="'.$rows['$id'].'">'.$rows['$rag_sociale'].'</option>'
      } 
      echo 
    '</select>'

    ?>

  9. #9
    Ho provato in tutti i modi ma non mi dà i risultati che spero.
    Se faccio una ricerca e stampo i risultati, me li visualizza tutti in ordine, messi per bene.... ma come faccio per dirgli di inserire i dati nel menù a tendina, non ne vuol sapere e mi fa le bizze .....

    Ho provato in diversi modi, mi stampa N volte il menù quanti sono i valori di $id e $rag_sociale

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.