2017-04-09 81 views
0

我想用html表格更新sql表格。我想用下拉列表选择元素,然后用表单更新值。用表格更新Mysql

这是我的代码,下拉列表和表单工作,但我不知道如何使php代码获取我选择的元素。

HTML表单:

<?php 
      require("conectarBD.php"); 

      $select = "SELECT id_serie, nombre FROM series"; 
      $result = $conectar->query($select); 

      ?> 

      Selecciona la serie que quieres modificar: 

      <br> 

      <select> 

       <?php  
       while ($row = $result->fetch_array())  
       { 
        ?> 

        <option value=" <?php echo $row['id_serie'] ?> " > 
        <?php echo $row['nombre']; ?> 
        </option> 

        <?php 
       }  
       ?> 

      </select> 
      <form action="modificar_serie.php" method="post"> 
      <p> 
       Introduce los cambios a realizar: 
      </p> 
      <p> 
      <label for="textfield">Nombre</label> 
      <input type="text" name="nom" id="nom" /> 
      <label for="textarea"></label> 
      </p> 
      <p> 
      <label for="textfield">Temporadas</label> 
      <input type="number" name="temp" id="temp" /> 
      <label for="textarea"></label> 
      </p> 
      <p> 
      <label for="textfield"> Año de estreno</label> 
      <input type="text" name="est" id="est" /> 
      <label for="textarea"></label> 
      </p> 
      <input type="Submit" value="Actualizar"> 
      </form> 

PHP:

<?php 
require("conectarBD.php"); 

$nombre = $_POST["nombre"]; 
$temp = $_POST["temp"]; 
$est = $_POST["est"]; 

$query="UPDATE series SET nombre = '.$nombre.', temporadas = '.$temp.', estreno= '.$est.' WHERE nombre='$nombre'"; 


mysqli_query($conectar,$query); 

    if(mysqli_affected_rows()>=0){ 
    echo "<p>($nombre) Datos Actualizados<p>"; 
    }else{ 
    echo "<p>($nombre) No se ha podido actualizar en estos momentos<p>"; 
    } 


    header("Location: ../index.php"); 
?> 
+0

我知道这并不回答你的问题,但要小心SQL注入。 [这里](https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php#60496)是一个很好的帖子,可以帮助你保护你的应用程序。 – mnme

回答

0

select元素必须是内form,有一个名字。然后你将能够从$_POST得到它的价值。