php Inserisci il valore del pulsante di opzione su mysql



jquery radio-button (2)

Quindi ho creato un modulo di prova solo per provare a inviare il valore del mio pulsante radio a mysql. Al momento ho problemi con questo. Sto ancora cercando di fare i conti con php e mysql così nudo con me. Il codice qui sotto è solo un test, voglio che il pulsante radio invii il valore ma non lo è.

    <table width="300" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td><form name="form1" method="post" action="insert_ac.php">
<table width="100%" border="0" cellspacing="1" cellpadding="3">
<tr>
<td colspan="3"><strong>TEST </strong></td>
</tr>
<tr>
<td width="71">Name</td>
<td width="6">:</td>
<td width="301"><input name="name" type="text" id="name"></td>
</tr>
<tr>
<td>Case</td>
<td>:</td>
<td><input name="case" type="radio" id="case1"> <input name="case" type="radio" id="case2"> <input name="case" type="radio" id="case3"></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="email" type="text" id="email"></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="Submit" value="Submit"></td>
</tr>
</table>
</form>
</td>
</tr>
</table>

Ed ecco la parte di connessione del database

<?php

$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password="123"; // Mysql password 
$db_name="store"; // Database name 
$tbl_name="test_mysql"; // Table name 

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// Get values from form 
$name=$_POST['name'];
$case=$_POST['case'];
$email=$_POST['email'];

// Insert data into mysql 
$sql="INSERT INTO $tbl_name(name, case, email)VALUES('$name', '$case', '$email')";
$result=mysql_query($sql);

// if successfully insert data into database, displays message "Successful". 
if($result){
echo "Successful";
echo "<BR>";
echo "<a href='insert.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?> 

<?php 
// close connection 
mysql_close();
?>

l'aiuto sarebbe molto appagato


Answer #1

Questo viene fatto aggiungendo valori all'ingresso del pulsante radio. Per esempio:

<form method="post">
<input type="radio" name="sex" value="male">Male<br>
<input type="radio" name="sex" value="female">Female
<input type="submit">
</form> 

Answer #2

Dovresti iniziare chiudendo tutti i tag <input> con </input> o almeno una barra alla fine (come <input name="case" type="radio" id="case1"></input> ) .

Dovresti impostare i valori sulle tue radio (come in questo caso restituiscono sempre 'on' ), mentre il pulsante di invio non ha bisogno né del nome né del valore.

MODIFICARE:

Definisci una radio predefinita con il tag di input yout selezionato! Se nessuno è selezionato, non viene trasmesso alcun case e PHP lancia l' Undefined index: case quando si accede a $_POST['case'] .

Un buon modo per prevenire tali errori è verificare se sono stati impostati tutti gli indici necessari. Puoi fare quanto segue:

if(isset($_POST['name']) and isset($_POST['case']) and isset($_POST['email'])) { ... }




radio-button