Foros del Web » Programando para Internet » PHP »

Eliminar registro de tipo especial

Estas en el tema de Eliminar registro de tipo especial en el foro de PHP en Foros del Web. Saludos Mi prombelema es el siguiente: Almaceno en una tabla de mysql el codigo de un estudiante con guinones el campo se llama cod_estu es ...
  #1 (permalink)  
Antiguo 20/12/2006, 20:29
Avatar de El_Aprendiz  
Fecha de Ingreso: febrero-2005
Mensajes: 152
Antigüedad: 19 años, 2 meses
Puntos: 0
Eliminar registro de tipo especial

Saludos

Mi prombelema es el siguiente:
Almaceno en una tabla de mysql el codigo de un estudiante con guinones el campo se llama cod_estu es de tipo varchar(14) el codigo es de la siguiente forma ES-CD1731-0001 El problema es que no puedo eliminarlo al parecer lo hace pero no, ya comprobe que es por los guines cual es la solucion?
Este es el codigo que utilizo para borrar
Código PHP:
    $sql "DELETE FROM parentesco WHERE cod_par='{$_POST['codigo']}'"
1- El codigo para eliminar me funciona cuando lo almaceno asi ESCD17310001

2- Pero no asi ES-CD1731-0001

Y debo de almacenarlo de de la segunda forma.

Gracias
__________________
La verdadera grandeza no está en no caer, si no en levantarse cada vez que caemos.
  #2 (permalink)  
Antiguo 21/12/2006, 01:26
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Eliminar registro de tipo especial

Buenas,

si haces un echo $_POST['codigo'] q resultado te sale?

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #3 (permalink)  
Antiguo 21/12/2006, 13:19
Avatar de El_Aprendiz  
Fecha de Ingreso: febrero-2005
Mensajes: 152
Antigüedad: 19 años, 2 meses
Puntos: 0
Re: Eliminar registro de tipo especial

Bueno
Para empezar me equivoque de codigo,
Mira voy a ser mas especifico, el resultado de mi busqueda genera una lista de todas las coincidencias encontradas, es decir un listado que al lado del codigo del estudiante aparece un checkbox en el cual el usuario chequea el que desea borar y luego hago click en un boton que invoca el script para borar me borra todos aquellos que no tienen guiones y los que tienen no me los borra este es el escript que utilizo para borar
Código PHP:
<?// Generamos una lista de los ID's (campo value= ..) que tenemos en nuestro array. 
echo $_POST['seleccion']; //aqui me imprime la palabra "Array"
$lista=implode(',',$_POST['seleccion']); 
echo 
"$lista"//inprime el valor del codigo que trae para borrarlo me imprime "ES-CD731-001" pero no me lo borra
// Y lo aplicamos al SQL correspondiente y ejecutamos la consulta. 
mysql_query("DELETE FROM estudiante WHERE cod_estu IN(".$lista.")"); 

?>
En este caso si me lo borra notaran que lo unico que cambia es el contenido del codigo.

Código PHP:
<?// Generamos una lista de los ID's (campo value= ..) que tenemos en nuestro array llamado "seleccion. 
echo $_POST['seleccion']; //aqui me imprime la palabra "Array"
$lista=implode(',',$_POST['seleccion']); 
echo 
"$lista"//inprime el valor del codigo que trae para borrarlo me imprime "ESCD73100001" Este "si" lo borra
// Y lo aplicamos al SQL correspondiente y ejecutamos la consulta. 
mysql_query("DELETE FROM estudiante WHERE cod_estu IN(".$lista.")"); 

?>
Espero ma haya explicado y te estoy muy agradecido por tu tiempo muchas gracias estare pendiente de alguna respuesta
__________________
La verdadera grandeza no está en no caer, si no en levantarse cada vez que caemos.
  #4 (permalink)  
Antiguo 22/12/2006, 01:42
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Eliminar registro de tipo especial

Hola,
no me habia fijado q era una array.
para mostrar el contenido de una array se hace d la siguiente manera:

Código PHP:
<pre>
<?
print_r 
($_POST['seleccion']);
?>
</pre>
asi te mostara el contenido del array.
Aqui debes mirar si te llegan los valor con guiones!
en caso de q lleguen el problema lo tenemos en la consulta DELETE (por decirlo asi) en caso contrario, si no te llegan miraremos como es tu codigo cuando crear la lista y los checkbox.

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #5 (permalink)  
Antiguo 23/12/2006, 12:03
Avatar de El_Aprendiz  
Fecha de Ingreso: febrero-2005
Mensajes: 152
Antigüedad: 19 años, 2 meses
Puntos: 0
Re: Eliminar registro de tipo especial

Saludos
Al imprimir el contenido del array cuando he seleccionado 2 registros a borrar como tu me lo dijistes me sale esto
Cita:
Array ( [0] => ES731-011 [1] => ES731-040 )
asi construyo la tabla para que veas:
Código PHP:
$parametro=$_POST['txtbuscar'];
//echo "$parametro";
$resultado =mysql_query("SELECT * FROM estudiante WHERE nom_estu LIKE '%$parametro%' or ape_estu LIKE '%$parametro%'or cod_estu LIKE '%$parametro%' ORDER BY cod_estu"); 

// Se inicial el formulario 
echo "<form action=\"procesar.php\" method=\"post\"> \n"
//echo "</p>";
// Extraemos y componemos los checbox dinámicos de los datos de la tabla de la BD. 
while ($row mysql_fetch_array($resultado)){ 
                echo 
"<td><img src='estudiante.ico'><input type=\"checkbox\"name=\"seleccion[]\"value=\"".$row['cod_estu']."\">".$row['cod_estu']."</td>";
                echo 
"<td>".$row['nom_estu']."</td>";
                echo 
"<td>".$row['ape_estu']."</td>";
                echo 
"</tr>";
                
}
     
$encontrados mysql_affected_rows();
//echo "</p>";
echo "<img src='buscar.ico'> $encontrados Coincidencia(s) Encontrada(s)</p>";
// Cerramos el formulario 
echo "<input type=\"submit\" name=\"Submit\" value=\"ELIMINAR\">"
echo 
"</form>"
?> 
Cual es el erro de que no me elimina
__________________
La verdadera grandeza no está en no caer, si no en levantarse cada vez que caemos.
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 08:01.