Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/12/2008, 20:50
krisiun1
 
Fecha de Ingreso: diciembre-2008
Mensajes: 10
Antigüedad: 15 años, 4 meses
Puntos: 0
Buscar & Editar en PHP (Update!)

Estimados,

Me gustaría si me pueden echar una mano con un código que tengo.
Les cuento el problema, tengo un buscador de PHP, el cual funciona muy bien, pero también tengo un editor que hace los UPDATE, pero lo que quiero, que al momento de hacer una búsqueda, aparezca algo así como "Modificar Registro" y uno realice el click y se active el modificador.

Por ejemplo: Si en el buscador escribo "Pedro", muestre toda la información de Pedro y abajo me pregunte si deseo modificar esa información y si realizo el click me dirija a "modi.php?id=6" que seria el ID de ese registro.

Por favor, se los agradecería mucho.

A continuación les pego el codigo.

Buscador
Código PHP:
<?
$bd_servidor 
"localhost";
$bd_usuario "root";
$bd_contrasenya "";
$bd_bdname "ctc";
$bd_tabla "computadores"// Tabla donde se harán las búsquedas
// Conexión y selección de la base de datos
$link mysql_connect($bd_servidor,$bd_usuario,$bd_contrasenya);
mysql_select_db($bd_bdname,$link);
////////////////////////////
// Formulario
///////////////////////////
?><style type="text/css">
<!--
body,td,th {
    font-family: Verdana, Geneva, sans-serif;
    font-size: xx-small;
    color: #000;
}
-->
</style>
<center>
<p><h2>Introduzca el criterio de busqueda</h2></p>
<p><form name="buscador" method="post" action="buscador_generico.php"><br>
Buscar en:
<select name="campo">
<?php

//Con este query obtendremos los campos por los cuales el usuario puede buscar

$result mysql_query("SHOW FIELDS FROM `$bd_tabla`",$link);

while(
$row mysql_fetch_row($result)) {

// en $row[0] tenemos el nombre del campo
// de esta manera no necesitamos conocer el nombre de los campos
// por lo que cualquier tabla nos valdrá

?>
<option value="<?php echo $row[0]; ?>"><?php echo $row[0]; ?></option>
<?php

}

?>
</select>
Criterio(s): 
<input type="text" name="palabra" />
<input type="submit" value="Buscar" name="enviar">
</form></p>
</center>

<?

////////////////////////////
// Proceso del Formulario
///////////////////////////

if(isset($_POST['enviar'])) {

// Solo se ejecuta si se ha enviado el formulario

$query "SELECT * from $bd_tabla WHERE `{$_POST['campo']}` LIKE '%{$_POST['palabra']}%'";

$result mysql_query($query,$link);



$found false// Si el query ha devuelto algo pondrá a true esta variable

while ($row mysql_fetch_array($result)) {

$found true;

echo 
"<p>";

foreach(
$row as $nombre_campo => $valor_campo) {

// Tenemos que mostrar todos los campos de las filas donde se haya
// encontrado la búsqueda.


if(is_int($nombre_campo)) {

continue; 
//Cuando hacemos mysql_fetch_array, php genera un array
// con todos los valores guardados dos veces, uno con
// índice numérico y otro con índice el nombre del campo.
// Solo nos interesa el del nombre del campo.

}

echo 
"<b>".$nombre_campo."</b> : ".$valor_campo."<br>";
}

echo 
"</p>";

}

if(!
$found) {

echo 
"No se encontro la palabra introducida";

}

}
?>
Modificar (1- Muestra contenido disponible para modificar)
Código PHP:
<?
if (!($conexion mysql_connect("localhost","root","")))
{die(
"No se puede conectar");}
if (!
mysql_select_db("ctc"))
{die(
"no se puede seleccionar la base de datos");}
$query "SELECT * FROM computadores ORDER BY id";
$result mysql_query($query) or die(mysql_error());
while(
$fetch mysql_fetch_assoc($result)){
echo 
"<br> Nombre: " $fetch['nombre'] . "<a href=\"modi.php?id=".$fetch['id']."\">Modificar datos</a>";
}
?>
Modificar (2 - Muestra los campos editables)
Código PHP:
<?
if (!($conexion mysql_connect("localhost","root","")))
{die(
"No se puede conectar");}
if (!
mysql_select_db("ctc"))
{die(
"no se puede seleccionar la base de datos");}
$querya "SELECT * FROM computadores WHERE (id='".$id."')";
$resultamysql_query($querya) or die(mysql_error());
list(
$id,$inventario,$nombre,$apellido,$telomail,$rut) = mysql_fetch_row($resulta);
echo 
"<form name='modificaralumnos' action='actualizar.php' method='post'>"
."id: <input type='text' name='id' value='".$id."'><br>"
."Inventario: <input type='text' name='inventario' value='".$inventario."'><br>"
."Nombre: <input type='text' name='nombre' value='".$nombre."'><br>"
."Apellido: <input type='text' name='apellido' value='".$apellido."'><br>"
."Telefono o Mail: <input type='text' name='telomail' value='".$telomail."'><br>"
."Rut: <input type='text' name='rut' value='".$rut."'><br>"
."<input type='submit' name='btn_modi' value='Modificar'>"
."</form>"
?>
Modificador (3 - Actualiza el registro)
Código PHP:
<?
mysql_connect
("localhost","root","");
if (!
mysql_select_db("ctc"))
{die(
"no se puede seleccionar la base de datos");}
$sSQL="update computadores set inventario='$inventario',nombre='$nombre',apellido='$apellido',telomail='$telomail',rut='$rut' WHERE (id='".$id."')";
mysql_db_query("ctc",$sSQL);
?>