Jump to content
Sign in to follow this  
snake07n

Update SQL

Recommended Posts

Hola a todos...no logro modificar los campos de mi base de datos con la sentencia SQL UPDATE, me da error...

C:\xampp\htdocs\Proyecto_final\mod_dat_tax2.php on line 95

El update no me funcionará si no hay ningún registro que cumpla la condición que le imponga. El mensaje de error que estoy recibiendo parece indicar que no está definido taxi_radio.

LA pregunta es muy clara,  como defino taxi_radio del cual es el nombre de la selección de vehículos anteriormente elegida en la pagina 1,
<input type="radio" name="taxi_radio" id="taxi_radio" value="<?php echo($dat[0]);?>">

He adjuntado 2 paginas creadas para que veáis el procedimiento que he seguido...
Estoy en fase de aprendizaje y aun no logro tener la suficiente experiencia para resolver este pequeño inconveniente.
Mil gracias por vuestro tiempo..

 

// Pagina 1

<?php
$conexion= mysqli_connect("localhost: 3306", "root", "", "taxicorp")or die("Error en la conexion con la BD");
?>

<!doctype html>
<html>
<head>
   <meta charset="utf-8">
   <title>Modificar datos</title>
   
   <style>
      @font-face{
         font-family: 'RobotoMono';
         src: url(Tipografias/RobotoMono.ttf);
         font-style: normal;
      }
      
      table{
         width: 765px; height: 20px;
            border: ridge thick aliceblue;
         background-color: antiquewhite;
         table-layout: inherit;
      }
      #estatic{
         position: absolute;
         left: 185px; top: 85px;
      }
   </style>
   
</head>
<body bgcolor="#000000">
   
   <div id="estatic">
      <form action="mod_dat_tax2.php" method="post">
         <table border="1">
            <tr>
               <td><b>*</b></td>
               <td><b>Matricula</b></td>
               <td><b>Modelo</b></td>
               <td><b>Conductor</b></td>
            </tr>
   <?php
      $sel= "SELECT * FROM taxis";
      $exec= mysqli_query($conexion, $sel);
            
      while($datos= mysqli_fetch_row($exec)){
   ?>
            <tr>
                    <td><input type="radio" name="taxi_radio" value="<?php echo($datos[0]);?>"></td>
               <td><?php echo($datos[0]);?></td>
               <td><?php echo($datos[1]);?></td>
               <td><?php echo($datos[2]." ".$datos[3]);?></td>
            </tr>
   <?php
      }
   ?>
            <tr>
               <td colspan="4" align="center">
               <input type="submit" name="botonEnviar" value="Modificar Datos"></td>
            </tr>
         </table>
      </form>
      <a href="contenido.php" style="float: right; font: 14px bold RobotoMono; color: aliceblue">Volver</a>
   </div>
</body>
</html>

// Pagina 2

<?php
$conexion= mysqli_connect("localhost: 3306", "root", "", "taxicorp")or die("Uppsss!!... ALgo ha ido mal...");
?>

<!doctype html>
<html>
<head>
	<meta charset="utf-8">
	<title>Modificar datos</title>
</head>
	<style>
		@font-face{
			font-family: 'RobotoMono';
			src: url(Tipografias/RobotoMono.ttf);
			font-style: normal;
		}
		
		table{
			width: 765px; height: 20px;
			border: ridge thick aliceblue;
			background-color: antiquewhite;
			table-layout: inherit;
		}
		#estatic{
			position: absolute;
			left: 185px; top: 85px;
		}
		h3{
			color: aliceblue;
		}
	</style>
	
<body>
    
    <?php
    
    if(!isset($_POST['boton_enviar'])){
        
        $conexion= mysqli_connect("localhost: 3306", "root", "", "taxicorp")or die("Uppsss!!... ALgo ha ido mal...");
        $sql="SELECT * FROM taxis WHERE Matricula='".$_POST['taxi_radio']."'";
        
        $exec= mysqli_query($conexion, $sql);
        $registro= mysqli_fetch_row($exec);
        
        
    ?>
	<div id="estatic">
	<form action="mod_dat_tax2.php" method="post">
		<table border="1">
			<tr>
				<td colspan="2" align="center"><b>Matricula:&nbsp;<font color="#BB0B0E">
					<?php echo($_POST['taxi_radio']);?></font></b></td>
			</tr>
			<tr>
				<td><b>Modelo:</b></td>
				<td><input type="text" name="Modelo" size="40" value="<?php echo($registro[1]);?>"></td>
			</tr>
			<tr>
				<td><b>Nombre y Apellidos:</b></td>
				<td>
					<input type="text" name="Nombre" value="<?php echo($registro[2]);?>">
					<br>
				    <input type="text" name="Apellidos" size="35" value="<?php echo($registro[3]);?>"></td>
			</tr>
			<tr>
				<td><b>Libre:</b></td>
				<td><input type="checkbox" name="libre" <?php if($registro[4]) echo("checked");?>></td>
			</tr>
			<tr>
				<td colspan="2" align="center"><input type="submit" name="boton_enviar" value="Modificar Datos"></td>
			</tr>
		</table>
	</form>
		<a href="mod_dat_tax.php" style="float: right; font: 14px bold RobotoMono; color: aliceblue">Volver</a>
	</div>
    
    <?php
        
    }else{
        
		$update ="UPDATE taxis SET Modelo='".$_POST['Modelo']."',"."Nombre='".$_POST['Nombre']."',";
		$update.="Apellidos='".$_POST['Apellidos']."',Ocupado=";
		
		if (isset($_POST['libre']))
			$update.="true";
		else
			$update.="false";
		
        $update.=" WHERE Matricula='".$_POST['taxi_radio']."'";
		// Sentencia SQL
		$exec= mysqli_query($conexion, $update);
	    
	    echo("<br>");
		// Registro en la tabla taxis
		if(!$exec)
			echo("<br><br><center><h3>Datos Modificados!!</h3></center><br>
                  <a href='mod_dat_tax.php'><center><input type='button' name='button' value='Volver'></center></a>");
		else
			echo("<br><br><center><h3>Error!!</h3></center><br>
                  <a href='mod_dat_tax.php'><center><input type='button' name='button' value='Volver'></center></a>");
        mysqli_close($conexion);
    }
    ?>

</body>
</html>

 

Share this post


Link to post
Share on other sites
16 hours ago, snake07n said:

<?php
  if(!isset($_POST['boton_enviar'])){
    $sql="SELECT * FROM taxis WHERE Matricula='".$_POST['taxi_radio']."'";

 

 

If your submit button isn't set, you would logically assume that no $_POST variables have been sent through.

You would never have $_POST['taxi_radio'] defined.

Edited by Funce

Share this post


Link to post
Share on other sites

Try this instead

$sql="SELECT * FROM taxis";

I don't know any more from your situation to improve it.

Edited by Funce

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...