Foros del Web » Programando para Internet » PHP »

Ayuda con Script PHP mysql

Estas en el tema de Ayuda con Script PHP mysql en el foro de PHP en Foros del Web. Hola, estoy haciendo una pequena pagina en php / mysql cuyo codigo es el siguiente. Código: <?php $link = mysql_connect("localhost", "root", ""); mysql_select_db("ejemplo",$link) or die ...
  #1 (permalink)  
Antiguo 22/10/2009, 14:31
 
Fecha de Ingreso: abril-2009
Mensajes: 39
Antigüedad: 15 años
Puntos: 0
Ayuda con Script PHP mysql

Hola, estoy haciendo una pequena pagina en php / mysql cuyo codigo es el siguiente.
Código:
<?php

	$link = mysql_connect("localhost", "root", "");
	mysql_select_db("ejemplo",$link) or die ("<center>NO HAY CONEXION CON LA BASE DE DATOS</center>");

//_______________________________________________________________________________________________

//*************************************************************
//ASIGNACION DE OPCIONES
		if($_POST["submit"] == "Enviar Informacion") {
				$caso = 1; }
	   elseif($_POST["submit"] == "Listado de Registros") {
			 	$caso = 2; }
	  elseif($_POST["submit"] == "Listado de Registros") {
			 	$caso = 3;  }
	  
	   elseif($_POST["submit"] == "Eliminar DB") {
			 	$caso = 4; }
//*************************************************************

//_______________________________________________________________________________________________

//*************************************************************
// ASIGNAR VALORES DE FORMULARIO A VARIABLES
		$nombre= $_POST['nombre'];
		$direccion = $_POST['direccion'];
		$telefono = $_POST['telefono'];
		$email = $_POST['email'];
//*************************************************************

//_______________________________________________________________________________________________

//*************************************************************
//BORRA REGISTROS SOLICITADOS POR EL USUARIO                                      
		$del = $_GET['del'];																									
				if($del <> 0) {
					$query = "DELETE FROM demo WHERE id = $del";
					$borrar = mysql_query($query);
					$msg2 = "El Registro numero $del ha sido borrado exitosamente";
					$caso = 2;
					}
//*************************************************************

//_______________________________________________________________________________________________






// Case para ejectuar segun boton presionado.

	switch($caso) {
			 case 1:
 						if(empty($nombre) || (empty($direccion)) || (empty($telefono)) || (empty($email))) {
									$msg = "No debe dejar ningun campo en blanco";
						} else {
									$query = "INSERT INTO demo (nombre,telefono,direccion,email) VALUES ('$nombre','$telefono','$direccion','$email')";
									$insertar = mysql_query($query);
						 			$msg = "Los Datos han sido Guardados";
						}	
									$caso = 2;
						
	
				case 2:
 						$query = "SELECT * FROM demo";
						$listar = mysql_query($query);
						$num = mysql_num_rows($listar);
 						$msg = "Existen $num registros actualmente";
						break;
	
				case 3:
						$input = $_POST['input'];
					
						if(empty($nombre) || (empty($direccion)) || (empty($telefono)) || (empty($email))) {
									$msg = "No debe dejar ningun campo en blanco";
						} else {
						
									$update = "UPDATE demo SET nombre = '$nombre', telefono = '$telefono', direccion = '$direccion', email = '$email'	WHERE id = $input" ;
  									$actualizar = mysql_query($update);
									$msg = "Registro numero $regmod actualizado correctamente.";
						}
						break;

				case 4:
 						$msg = "En Construccion";
						break;
 	
				}

?>


<HTML>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>BD Connect</title>
<style type="text/css">
<!--
.style1 {
	color: #CCCCCC;
	font-weight: bold;
}

.campo { background-color:#000000;
		color:#FFFFFF;
		
		}
.campo:hover {background-color:#000000;
				color:#66FFFF
				
			 }

.campo2 { background:#000066;
		color:#FFFFFF
		}

.mensaje { color:#FF0000;
			font-weight:bold }

-->
</style>
</head>

<body>
<div align="center">
  <p><a href="db.php">A&ntilde;adir un Registro </a></p>
  <form id="form1" name="form1" method="post" action="db.php">
<?php
//*************************************************************
//CARGAR DATOS PARA MODIFICAR REGISTROS

$mod = $_GET['mod'];
		
 				 if($mod!=0) {
					$query = "SELECT * FROM demo WHERE id = $mod";
					$premod = mysql_query($query);
					$datamod = mysql_fetch_array($premod);
								
				 }
//*************************************************************				 
?>
 	<table width="539" border="1">
    <tr>
      <td colspan="4" bgcolor="#000000"><div align="center" class="style1">CAPTURA DE DATOS </div></td>
    </tr>
    <tr>
      <td width="153">Nombre:</td>
      <td colspan="3"><input type="text" class="campo2"   name="nombre" value="<?php echo $datamod['nombre'] ?>" /></td>
      </tr>
    <tr>
      <td>Direcci&oacute;n:</td>
      <td colspan="3"><input type="text" class="campo2" name="direccion" value="<?php echo $datamod['direccion'] ?>" /></td>
    </tr>
    <tr>
      <td>Tel&eacute;fono:</td>
      <td colspan="3"><input type="text" class="campo2" name="telefono" value="<?php echo $datamod['telefono'] ?>" /></td>
    </tr>
    <tr>
      <td height="26">Email:</td>
      <td colspan="3"><input type="text" class="campo2" name="email" value="<?php echo $datamod['email'] ?>" /></td>
    </tr>
    <tr>
      <td><input type="submit" name="submit" class="campo" value="Enviar Informacion" /></td>
      <td width="147"><div align="center">
        <input type="submit" name="submit" class="campo" value="Listado de Registros" />
      </div></td>
      <td width="115"><div align="center">
        <input type="submit" name="submit" class="campo" value="Guardar Cambios" />
      </div></td>
      <td width="96"><div align="center">
        <input type="submit" name="submit" class="campo" value="Eliminar DB" />
      </div></td>
    </tr>
  </table>

    <p class="mensaje">
    
    <?php } ?>
      <?php echo $msg ?><br  />
	<?php echo $msg2 ?>
	</p>
  </form>
</div>

<table width="763" border="1" align="center">
  <tr bgcolor="#000000">
    <td colspan="6"><div align="center" class="style1">Lista de Datos de la BD </div></td>
  </tr>
  <tr>
    <td width="134"><div align="center">ID</div></td>
    <td width="193"><div align="center">Nombre</div></td>
    <td width="350"><div align="center">Direccion</div></td>
    <td width="98"><div align="center">Telefonos</div></td>
    <td width="150"><div align="center">Email</div></td>
    <td width="225"><div align="center">Acciones</div></td>
  </tr>
    <?php  
	if($caso == 2) {
		
		while($usuarios = mysql_fetch_array($listar)){ 	?>
			<tr>
				<td width="134"><div align="center"><?php echo $usuarios['id'] ?></div></td>
   				<td width="193"><div align="center"><?php echo $usuarios['nombre']?></div></td>
    			<td width="350"><div align="center"><?php echo $usuarios['direccion']?></div></td>
   			    <td width="98"><div align="center"><?php echo $usuarios['telefono']?></div></td>
    			<td width="150"><div align="center"><?php echo $usuarios['email'] ?></div></td>
			    <td width="225"><div align="center"><a href="db.php?mod=<?php echo $usuarios['id'] ?>">Modificar</a> | <a href="db.php?del=<?php echo $usuarios['id'] ?>">Eliminar</a></div></td>
  </tr>
	<?php }
	}		
	
		
	?>
</table>
<p align="center">&nbsp;</p>
</body>
</html>
La funcion de listar usuarios, e insertarlos funciona perfectamente al igual que la de eliminar, pero cuando pongo modificar, y luego presiono el boton guardar cambios, no tengo com odecirle a el update en el mysql que actualizar, porque el id se pierde cuando clickeo modificar,, alguna sugerencia?

Saludos cordiales.
  #2 (permalink)  
Antiguo 22/10/2009, 14:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda con Script PHP mysql

Cita:
Iniciado por drakeman Ver Mensaje
[...] porque el id se pierde cuando clickeo modificar,, alguna sugerencia? [...]
claro, si ya tienes el ID al mostrar el formulario... debes pasarlo por un <input/> hidden
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 22/10/2009, 15:30
 
Fecha de Ingreso: abril-2009
Mensajes: 39
Antigüedad: 15 años
Puntos: 0
Respuesta: Ayuda con Script PHP mysql

Cita:
Iniciado por pateketrueke Ver Mensaje
claro, si ya tienes el ID al mostrar el formulario... debes pasarlo por un <input/> hidden
ya trate, pasando un hidden que reciba el valor de $mod, luego lo recibo en el case 3, con un $var = $_POST['input'] e igual no pasa... :(
  #4 (permalink)  
Antiguo 22/10/2009, 15:37
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda con Script PHP mysql

Cita:
Iniciado por drakeman Ver Mensaje
ya trate, pasando un hidden que reciba el valor de $mod, luego lo recibo en el case 3, con un $var = $_POST['input'] e igual no pasa... :(
pues esta raro... hay algo que estas haciendo mal...

por ejemplo, una ves visualices el formulario de edición... revisa el código HTML generado y revisa que el hidden este... y con algún valor...

¿esta todo bien??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 23/10/2009, 21:35
 
Fecha de Ingreso: abril-2009
Mensajes: 39
Antigüedad: 15 años
Puntos: 0
Respuesta: Ayuda con Script PHP mysql

Cita:
Iniciado por pateketrueke Ver Mensaje
pues esta raro... hay algo que estas haciendo mal...

por ejemplo, una ves visualices el formulario de edición... revisa el código HTML generado y revisa que el hidden este... y con algún valor...

¿esta todo bien??
Gracias, volvi a revisar el codigo y si estaba recogiendo mal el dato que estaba pasando por el hidden, ahora si esta funcionando gracias por el apoyo... ya tengo mi tarea resuelta para el curso del lunes ajjajaja.
saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:20.