seleccionar - Creación dinámica de botones de radio y asignación de valores seleccionados PHP
seleccionar radio button javascript (4)
Hola, soy bastante nuevo en PHP. Estoy tratando de obtener el valor seleccionado de mi botón de opción en PHP, pero no puedo obtener el valor seleccionado. He llenado los valores conectándome a mi DB (MySQL) pero no puedo obtener el valor asignado desde el botón de opción. Siempre escapa a la condición if y dice "Sin valor seleccionado" y no puedo asignar el valor y guardarlo en mi base de datos.
Aprecio tu ayuda.
Mi index.php es el siguiente `
<?php
session_start();
$_SESSION[''timein'']= time();
?>
<?php
include("config.php");
$conn = mysqli_connect($dbHost, $dbuser, $dbpassword, $dbDatabase);
$query_salutation_type=''SELECT salutation_description FROM tbl_salutation;'';
$select_salutation_type=mysqli_query($conn, $query_salutation_type);
while($row1 = mysqli_fetch_array($select_salutation_type))
{
echo ''<input type="radio" name="salutation_description" value="''.$row1[0].''"/>''.$row1[0];
}
?>
<html>
<body>
<form method="post" action="capture_data.php" >
<input type="submit" name="submit" value="Submit"/>
</form>
</body>
</html>
`
My capture_data.php es el siguiente
<?php
if(isset($_POST[''submit'']))
{
if(isset($_POST[''salutation_description'']))
{
$selected_val = $_POST[''salutation_description''];
echo "You have selected :" .$selected_val;
}
else
{
echo ''No Value Selected'';
}
}
?>
Debes usar tu botón de radio dentro de la etiqueta <form>
como:
Código modificado:
<?php
session_start();
$_SESSION[''timein'']= time();
?>
<html>
<body>
<form method="post" action="capture_data.php" >
<?php
include("config.php");
$conn = mysqli_connect($dbHost, $dbuser, $dbpassword, $dbDatabase);
$query_salutation_type=''SELECT salutation_description FROM tbl_salutation;'';
$select_salutation_type=mysqli_query($conn, $query_salutation_type);
while($row1 = mysqli_fetch_array($select_salutation_type))
{
echo ''<input type="radio" name="salutation_description" value="''.$row1[0].''"/>''.$row1[0];
}
?>
<input type="submit" name="submit" value="Submit"/>
</form>
</body>
</html>
El formulario solo envía entradas que están entre <form>
y </form>
. Te estás haciendo eco de los botones de opción antes de <form>
.
<?php
session_start();
$_SESSION[''timein'']= time();
?>
<html>
<body>
<form method="post" action="capture_data.php" >
<?php
include("config.php");
$conn = mysqli_connect($dbHost, $dbuser, $dbpassword, $dbDatabase);
$query_salutation_type=''SELECT salutation_description FROM tbl_salutation;'';
$select_salutation_type=mysqli_query($conn, $query_salutation_type);
while($row1 = mysqli_fetch_array($select_salutation_type))
{
echo ''<input type="radio" name="salutation_description" value="''.$row1[0].''"/>''.$row1[0];
}
?>
<input type="submit" name="submit" value="Submit"/>
</form>
</body>
</html>
Hola, Lad, intenta reubicar el bucle while dentro de la etiqueta del formulario de tu HTML. Como el ejemplo de abajo :RE
<?php
session_start();
$_SESSION[''timein'']= time();
?>
<?php
include("config.php");
$conn = mysqli_connect($dbHost, $dbuser, $dbpassword, $dbDatabase);
$query_salutation_type=''SELECT salutation_description FROM tbl_salutation;'';
$select_salutation_type=mysqli_query($conn, $query_salutation_type);
?>
<html>
<body>
<form method="post" action="capture_data.php" >
<?php
while($row1 = mysqli_fetch_array($select_salutation_type))
{
echo ''<input type="radio" name="salutation_description" value="''.$row1[0].''"/>''.$row1[0];
}
?>
<input type="submit" name="submit" value="Submit"/>
</form>
</body>
</html>
<?php
session_start();
$_SESSION[''timein'']= time();
?>
<?php
include("config.php");
$conn = mysqli_connect($dbHost, $dbuser, $dbpassword, $dbDatabase);
$query_salutation_type=''SELECT salutation_description FROM tbl_salutation;'';
$select_salutation_type=mysqli_query($conn, $query_salutation_type);
$radioHtml = "";
while($row1 = mysqli_fetch_array($select_salutation_type))
{
$radioHtml.= ''<input type="radio" name="salutation_description" value="''.$row1[0].''"/>''.$row1[0];
}
?>
<html>
<body>
<form method="post" action="capture_data.php" >
<?php echo $radioHtml; ?>
<input type="submit" name="submit" value="Submit"/>
</form>
</body>
</html>
Mantenga los botones de radio dentro de su forma