[PHP] Recuperare dato esatto tabella

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao a tutti. Apro questa discussione per chiedervi un aiutino.
Nella mia pagina .php ho un drop-down box e un bottone e ho una tabella mysql composta da due semplici colonne (id - dato).
All'interno del drop-down box è riportata tutta la colonna id, che va da 1 a 100.
Quello che vorrei fare è questo: dopo che scelgo un valore dal drop-down box e premo il bottone, vorrei stampare a video il corrispondente valore del dato.
Esempio: se ad id=25 corrisponde un dato=0.23, quando dal drop-down box scelgo 25 e clicco il bottone sullo schermo mi deve stampare dato=0.23;
Meglio ancora sarebbe se il valore corrispondente lo potessi attribuire ad una variabile.
Come potrei fare?
Ciao, grazie.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ciao ti faccio un esempio sempre se ho capito il problema
Codice:
<select class="" name="variabile" >
        <?php
                        $sql="SELECT * FROM tabella";
                        $result = $db_query->query($sql);
                        while($row = $result->fetch_array(MYSQLI_ASSOC)){
                        echo  '<option value="'.$row['dato'].'">'.$row['id'].'</option>';
                        }
                    ?>
                    </select>

quando premi il bottone alla pagina a cui indirizza il form ti basta semplicemente richiamarlo

Codice:
$variabile=$_POST['variabile'];

echo $variabile; //ti stampa l'id
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital. Grazie per l'aiuto.
Ho provato il tuo codice ma non mi funziona. Quando clicco sul bottone non succede niente... :(
Questo è il codice che ho scritto (sicuramente ho sbagliato da qualche parte)
Codice:
<body>

<form method="post">
    <input name="text" type="text" /><br />
    <br />
    <input name="submit" type="submit" value="submit" /><br />
    <br /></form>

<select class="" name="variabile">

<?php

  // faccio la connessione al server e al database
    $con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
    $db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());
   
  // estraggo tutto dalla tabella
    $sql="SELECT * FROM tabella ORDER BY id";
    $result = $db_query->query($sql);
   
    while($row = $result->fetch_array(MYSQLI_ASSOC))
    {
      echo  '<option value="'.$row['dato'].'">'.$row['id'].'</option>';
    }

?>

</select>

<?php
    $variabile = $_POST['text'];
    echo $variabile;

?>
</body>
Secondo te dove sbaglio?
Ciao, grazie.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
non capisco del primo input text che te ne fai, comunque basandomi su quello che hi chiesto provo a riscrivertelo
Codice:
<body>

<?php
    $variabile = $_POST['text'];
if($variabile)  echo $variabile ;

?>

<form method="post" action="">


    <input name="text" type="text" /><br />
    <br />
<select class="" name="variabile">

<?php

  // faccio la connessione al server e al database
    $con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
    $db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());
   
  // estraggo tutto dalla tabella
    $sql="SELECT * FROM tabella ORDER BY id";
    $result = $db_query->query($sql);
   
    while($row = $result->fetch_array(MYSQLI_ASSOC))
    {
      echo  '<option value="'.$row['dato'].'">'.$row['id'].'</option>';
    }

?>

</select>
    <input name="submit" type="submit" value="submit" /><br />
    <br />

</form>
</body>

la select devi inserirla dentro il tag form
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital. Grazie di nuovo per l'aiuto.
Ti spiego la presenza dell'input text: nell'input text l'utente scrive un dato a sua scelta presente nella tabella del database e, dopo aver premuto il bottone, il php mi deve stampare a video il relativo id.
Una domanda perchè sto facendo un pochino di confusione: mi spieghi per favore l'ultima frase che mi hai scritto? (la select devi inserirla dentro il tag form)
Ciao, grazie mille
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
il tuo codice era cosi
Codice:
<form>
....
</form>
<select>
....
</select>

mentre la select deve essere all'interno del tag form

Codice:
<form>
....
<select>
....
</select>
</form>
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital. Ho provato il tuo codice e funziona così... così...
Mi spiego. Appena avvio l'applicazione mi genera un errore e non visualizzo il bottone. L'errore è questo:
Codice:
Notice: Undefined index: text in C:\xampp\htdocs ... on line 12
Un'altra cosa: se provo a scrivere qualsiasi cosa nell'input text (qualsiasi cosa che non c'è nel database, anche una frase) e premo invio dalla tastiera, il php me la riscrive tale e quale.
Invece mi deve scrivere soltanto l' "id" corrispondente al "dato" inserito.
Ciao.
 
Ultima modifica:

Monital

Utente Attivo
15 Apr 2009
778
2
18
scusa non riesco a capire l relazione dell'input text, prima hainscritto che l'id devi recuperarlo dalla select box, cioè fami capire devi prelevare l'id sia dalla select box che dall'input text?

puoi mettere il codice per intero che staic ercando di usare?
 
Ultima modifica:

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital. Scusami, ho fatto un pò di confusione perchè sto lavorando anche su altri progettini.
Dimentica l'input text, non esiste. L'id lo devo recuperare dalla select box.
Il problema è questo: quando avvio il php mi compare il drop-down box ma è vuoto e poi non mi compare il bottone.
Questo è il codice:
Codice:
<body>

<form method="post" action="">

<select class="" name="variabile">

<?php

  // faccio la connessione al server e al database
    $con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
    $db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());
   
  // estraggo tutto dalla tabella
    $sql="SELECT * FROM tabella ORDER BY id";
    $result = $db_query->query($sql);
   
    while($row = $result->fetch_array(MYSQLI_ASSOC))
    {
      echo  '<option value="'.$row['dato'].'">'.$row['id'].'</option>';
    }

?>

</select>
    <input name="submit" type="submit" value="submit" /><br />
    <br />

</form>
</body>
Ciao, grazie mille e scusa se mi sono confuso.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
scusa nona vevo notato.
io uso mysqli per la connessione comunque
PHP:
<?php

  // faccio la connessione al server e al database
    $con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
    $db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());
   
  // estraggo dat dalla tabella

    $sql="SELECT * FROM tabella ORDER BY id";
  $result = mysql_query($sql);
     while($row=mysql_fetch_array($result)){
      echo  '<option value="'.$row['dato'].'">'.$row['id'].'</option>';
    }

?>
così dovresti vederlo ovvaiemente nella SELECT * FROM tabella devi mettere il nome della tua tabella.

Ne caso metti qualche var_dump per vedere quale passaggio non funge
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital. Ho provato il tuo codice e devo dire che funziona ma in parte.
Mi spiego: il codice che hai scritto estrae dalla tabella tutti gli id, mentre io vorrei estrarre dalla tabella soltanto l'id del dato che seleziono dal drop-down box (quindi un solo id).
Lo so che ti sto "stressando" e ti chiedo scusa per questo.
Ciao, grazie mille.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
scusa samurai, nessun stress ci mancherebbe, ma non sei molto chiaro. Inizialmente chiedevi che la select box si riempisse degli id per selezionare un id e che ti restituisse il dato dell'id. Fin qui quel codice fa uello che chiedi. Ora non capisco cosa ti serve. Vuoi usare il dato restituito dalla select per ripescare l'id?
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital.
Inizialmente chiedevo che nella drop-down box ci fosse la colonna "id" e che da questa potessi scegliere un qualsiasi valore.
Dopo aver premuto il bottone sullo schermo mi doveva stampare il valore del corrispondente "dato", e solo quello.
Con il tuo ultimo codice sullo schermo mi stampa tutti gli "id";
poi non mi compare il drop-down box e quindi non posso scegliere nessun valore.
Ciao.
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
ah ma samurai il codice che ti ho messo era a sostituire quello precedente per la connessione ma andava isnerito sempre nella select. avevo postato solo quello per accorciare
PHP:
<form method="post" action="">
<select class="" name="variabile">

<?php

  // faccio la connessione al server e al database
$con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
$db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());

// estraggo dat dalla tabella

$sql="SELECT * FROM tabella ORDER BY id";
$result = mysql_query($sql);
while($row=mysql_fetch_array($result)){
echo '<option value="'.$row['dato'].'">'.$row['id'].'</option>';
}

?>

</select>
    <input name="submit" type="submit" value="submit" /><br />
    <br />

</form>

per stampare il dato dipende se usi un altra pagina allora devi modificare l'action del form, per la stessa pagina ti basta richiamarla con
PHP:
$variabile= $_POST['variabile'];

echo $variabile;
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital.
Grazie grazie grazie grazie grazie grazie grazie grazie grazie grazie. Ora fa esattamente quello che volevo.
Questo forum è fenomenale, tra te e Borgo Italia non so quante volte mi avete aiutato.
Ciao. :D
 

samurai.sette

Utente Attivo
17 Dic 2015
234
6
18
Ciao Monital. Scusa se riapro la discussione.
Ti volevo chiedere una cosa. Se volessi stampare a video l'id all'interno di una input text come dovrei scrivere? Ho provato in questo modo ma non funziona
Codice:
<body>
<form method="post" action="">
    <select class="" name="variabile">
<?php
  // faccio la connessione al server e al database
$con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
$db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());
// estraggo dat dalla tabella
$sql="SELECT * FROM tabella ORDER BY id";
$result = mysql_query($sql);
while($row=mysql_fetch_array($result)){
//echo '<option value="'.$row['id'].'">'.$row['data'].'</option>';
echo "<input type=\"text\" readonly=\"readonly\" value=\"".$_POST['variabile']."\">";
}
?>
</select>
<input name="submit" type="submit" value="submit" />
<br />
<br />
<?php
if (isset ($_POST['submit']))
{
$variabile= $_POST['variabile'];
echo $variabile;
}
?>
</form>
</body>
Un altra cosa. A volte, ma non sempre mi genera questo errore
Notice: Undefined index: variabile in ...
Se però scelgo un valore e clicco il bottone l'errore sparisce e non compare più. Mha...
Ciao, grazie mille
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
non funziona perchè hai messo l'input all'interno della select
PHP:
<select class="" name="variabile">
<?php
  // faccio la connessione al server e al database
$con = mysql_connect ("localhost", "root","") or die ("Connessione al server fallita! ".mysql_error());
$db = mysql_select_db ("database", $con) or die ("Connessione al database fallita! ".mysql_error());
// estraggo dat dalla tabella
$sql="SELECT * FROM tabella ORDER BY id";
$result = mysql_query($sql);
while($row=mysql_fetch_array($result)){
echo '<option value="'.$row['id'].'">'.$row['data'].'</option>';
}
?>
</select>
<input type="text" readonly="readonly" value="<?php echo   (!$_POST['variabile']) ? '' : $_POST['variabile'];?>">
 
Discussioni simili
Autore Titolo Forum Risposte Data
S [PHP] recuperare dato da una tabella PHP 4
M [PHP] Recuperare coppia con valori i valori MAX e coppia con valori MIN PHP 26
B [PHP] recuperare IP dei server in load balancing [RISOLTO] PHP 3
S [PHP] recuperare determinato elemento con lo scraping PHP 1
A [PHP] Recuperare indice per inserirlo in un'altra tabella PHP 4
P [PHP] Recuperare dati da una <select> PHP 4
N [PHP] recuperare dati da db PHP 4
A [RISOLTO]Recuperare dati inviati con json tramite php PHP 4
F Recuperare dati json con php PHP 2
F Recuperare una stringa in formato json con php PHP 0
Metazoo Recuperare variabile php da javascript senza aggiornare pagina PHP 5
J Recuperare variabili da php a java Javascript 2
V Recuperare dati utente joomla 3 in file php esterno Joomla 0
D [php/ios] Recuperare dati da targa auto PHP 0
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1
E Barra di avanzamento codice PHP PHP 4
G creazione menu a tendina e invio a pagina php PHP 1
A inserire variabile php colore in div html PHP 2
Z Video protetto con PHP PHP 0
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
I Eecuzione di javascript in ciclo foreach php. PHP 7
S Libreria PHP per creare file dwg o dxf PHP 0
A [cerco - retribuito] Sviluppatore Php freelance per progetti vari Offerte e Richieste di Lavoro e/o Collaborazione 2
L Google chart php mysql PHP 2
R Download file multipli da directory php PHP 0
F pagina dinamica PHP PHP 3
P Rimozione automatica url da sitemap.xml con PHP PHP 1
L php tinymce mi duplica la classe label PHP 3
S Errore PHP - Notice: Undefined index ... PHP 14
N file manager da php 5 a 7 PHP 15
M Utilizzare la funzione mysql_num_rows() in PHP 5 PHP 3
elpirata Update dinamico informazioni scritte in una pagina php jQuery 11
N Mysql_result per PHP 7 PHP 2
Emix Select concatenate php sql ajax PHP 2
P Modifica con PHP di un node in una sitemap xml PHP 0
D Come usare funzione php PHP 6

Discussioni simili