Foros del Web » Programando para Internet » PHP »

No puedo borrar!!

Estas en el tema de No puedo borrar!! en el foro de PHP en Foros del Web. Hola He estado intentando de eliminar registros desde la base de datos pero no pasa nada, ni siquiera recivo mensajes de error: Primero busco el ...
  #1 (permalink)  
Antiguo 24/11/2007, 12:41
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
No puedo borrar!!

Hola
He estado intentando de eliminar registros desde la base de datos pero no pasa nada, ni siquiera recivo mensajes de error:
Primero busco el registro que quiero borrar:

Código PHP:
<form method="post" action="">
                            Full name: <input type="text" name="fullName"/><br /><br />
                            <input type="submit" name="search" value="Hitta"/><br /><br />
                            <?php
                             
if($search == "Hitta"){
                                
$name $_POST[fullName];
                                
$hitta mysql_query("SELECT fullname FROM glada_users WHERE fullname = '$name'");
                                
$row mysql_fetch_array($hitta);
                                
$user $row[fullname];
                                echo 
$user;
                                
                            }
echo 
'<input type="submit" value="Radera" name="delete"/>';
Hasta aqui funciona bien, me muestra el registro que quiero borrar y un boton para eliminar el registro.





Y el borrado lo intento hacer aca:

Código PHP:
if($delete == "Radera") {
        
mysql_query("DELETE FROM glada_users WHERE fullname= '$user'");
    }
?>
</form> 
Cuando hago click en borrar y reviso la base de datos, el registro no se ha borrado.

Donde esta el problema? o mejor dicho, que estoy haciendo mal?

Saludos
  #2 (permalink)  
Antiguo 24/11/2007, 12:52
 
Fecha de Ingreso: diciembre-2005
Mensajes: 105
Antigüedad: 18 años, 4 meses
Puntos: 0
Re: No puedo borrar!!

para ir descartando pasos primero chequea que la condicion if se este cumpliendo

Cita:
if($delete == "Radera") {
echo "Testeo";
mysql_query("DELETE FROM glada_users WHERE fullname= '$user'");
}
?>
__________________
www.AdWebLink.com -> Buscas visitas para tu WEB? Agrega tu sitio Gratis!
www.agregaweb.com.ar -> Agrega tu sitio web al Directorio
  #3 (permalink)  
Antiguo 24/11/2007, 13:04
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Re: No puedo borrar!!

Tenés que indicar por que método llega la variable...

Código PHP:
 if($_POST['delete'] == "Radera") {
        
mysql_query("DELETE FROM glada_users WHERE fullname= '" $_POST['user'] . "'");
    } 
  #4 (permalink)  
Antiguo 24/11/2007, 13:22
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Re: No puedo borrar!!

Intenta de esta forma para saber si ha pasado algun error.

Código PHP:
$query mysql_query("DELETE FROM glada_users WHERE fullname= ' " $user " ' ");
if (!
$query)
   die (
"Error: " mysql_error()); 
  #5 (permalink)  
Antiguo 24/11/2007, 13:41
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: No puedo borrar!!

No, hasta ahora no sucede nada, he probado con los codigos que postearon pero el resultado es el mismo.
Al final he quedado con esto:

Código PHP:
<form method="post" action="">
                            Full name: <input type="text" name="fullName"/><br /><br />
                            <input type="submit" name="search" value="Hitta"/><br /><br />
                            <?php
                                 
if($search == "Hitta"){
                                    
$name $_POST[fullName];
                                    
$hitta mysql_query("SELECT fullname FROM glada_users WHERE fullname = '$name'");
                                    
$row mysql_fetch_array($hitta);
                                    
$user $row[fullname];
                                    echo 
$user;
                                    
                                    echo 
'<input type="submit" value="Radera" name="delete"/>';    
                                    if(
$_POST['delete'] == "Radera") {
                                        
$query mysql_query("DELETE FROM glada_users WHERE fullname= '$user'");
                                        if(!
$query){
                                            die(
"Error: " mysql_error());
                                        }
                                    }
                                }
                                
                            
?>
                        </form>
Pero no funciona, al buscar me aparece el nombre que busco y desaparece cuando hago clik en borrar pero no desaparece de la base de datos.
  #6 (permalink)  
Antiguo 24/11/2007, 13:56
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Re: No puedo borrar!!

De hecho creo que no esta entrando ni al condicional

porque tienes

Código PHP:
if($search == "Hitta"){ 
y supongo que $search es <input type="submit" name="search" value="Hitta"/>

entonces deberia de ser

Código PHP:
if($_POST['search'] == "Hitta"){ 
  #7 (permalink)  
Antiguo 24/11/2007, 16:23
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: No puedo borrar!!

No me resulta, ahora he pedido el id del usuario solo para ver si la consulta funcionaba bien y cuando busco al usuario recibo el nombre y el id,es decir la consulta funciona bien, pero aun asi no puedo eliminar al usuario:

Código PHP:
<form method="post" action="">
                            Full name: <input type="text" name="fullName"/><br /><br />
                            <input type="submit" name="search" value="Hitta"/><br /><br />
                            <?php
                                 
if($_POST['search'] == "Hitta"){
                                    
$name $_POST[fullName];
                                    
$hitta mysql_query("SELECT * FROM glada_users WHERE fullname = '$name'");
                                    
$row mysql_fetch_array($hitta);
                                    
$user $row[fullname];
                                    
$id $row[userId];
                                    echo 
$user;
                                    echo 
$id;
                                    echo 
'<input type="submit" value="Radera" name="delete"/>';    
                                    if(
$_POST['delete'] == "Radera") {
                                         
mysql_query("DELETE FROM glada_users WHERE userId= '$id'");
                                        
                                    }
                                }
                                
                            
?>
Se necesitara algun permiso especial para eliminar registros de la base de datos? estoy conectandome como administrador.
  #8 (permalink)  
Antiguo 25/11/2007, 00:33
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Re: No puedo borrar!!

Ando medio bobo ahorita.. pero segun yo no veo nada extraño en tu codigo.. pero solo para quitarnos cualquier duda.. puedes hacer lo siguiente, algo rudimentario pero es solo para saber si algo anda mal..

Entonces en lugar de hacer el mysql_query, simplemente haz un echo como lo escribo abajo y el resultado sera la cadena para borrar los registros.. esa cadena la copias y en tu phpmyadmin la pegas como una consulta.. si lo borra todo esta bien y si no pues ahi sabremos el porque del error (supongo)..

Código PHP:
if($_POST['delete'] == "Radera") {
  echo 
"DELETE FROM glada_users WHERE userId= ' " $id " ' ";

  #9 (permalink)  
Antiguo 25/11/2007, 12:43
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: No puedo borrar!!

Bueno he seguido intentando durante el dia pero no logro hacer funcionar esta fornulario:

Ahora he probado otra cosa, al escribir el nombre de la persona que se buscara en vez de hacer click en "Hitta" (que significa "buscar" en sueco) hago click en "radera" (eliminar o borrar) y el registro se borra de la base de datos. Pero no ees la manera mas elegante de hacerlo.
Me gustaria que se escribiera el nombre a buscar, hacer click en el boton hitta y que me aparezca la informacion de la persona buscada y el boton para borrar.
Asi tengo el codigo ahora:

Código PHP:
                <form method="post" action="">
                    S&OUML;k: <input type="text" name="fullName" />
                    <input name="search" type="submit" value="Hitta"><br />
                    <input type="submit" name="delete" value="radera" /><br />
                </form>

                    <?php
                        
                        $name 
$_POST['fullName'];
                        GLOBAL 
$name;
                        if(isset(
$_POST['search']) && $_POST['search']=="Hitta") {
                        
$sql mysql_query("SELECT * FROM glada_users WHERE fullname = '$name'");
                        
$row mysql_fetch_array($sql) ;
                        
$user $row['fullname'];
                        echo 
'Anv&auml;ndare : ' $user;
                        }
                        if(isset(
$_POST['delete']) && $_POST['delete']=="radera") {
                            
$delete=mysql_query("DELETE FROM glada_users WHERE fullname='$name'");
                        }
                    
?>
  #10 (permalink)  
Antiguo 26/11/2007, 00:06
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Re: No puedo borrar!!

Revisa la estructura de este codigo y mira que esta forma es la correcta para listar primero un usuario y luego para borrarlo--

Código PHP:
echo '<form name="frmenviar" method="POST" action=" '.$_SERVER['PHP_SELF'].' ">';
echo 
'S&OUML;k: <input type="text" name="fullName" />';
echo 
'<input type="submit" name="search" value="Hitta" />';

    if (isset(
$_REQUEST['search'])) {
    
$sql "SELECT * FROM glada_users WHERE fullname = '".$_REQUEST['fullName']."'";
    
$query mysql_query($sql);
    
        while (
$row mysql_fetch_array($queryMYSQL_ASSOC)) {
            echo 
'<br/>Nombre: ' $row['fullName'];
            echo 
'<input type="hidden" name="delnombre" value="'.$_REQUEST['fullName'].'" /><br />';
            echo 
'<input type="submit" name="delete" value="radera" /><br />';
        }
    }
    
    else if (isset(
$_REQUEST['delete'])) {
    
$sql2 "DELETE FROM glada_users WHERE fullname = '".$_REQUEST['delnombre']."'";
    
$query2 mysql_query($sql2);
    }

echo 
'</form>'
  #11 (permalink)  
Antiguo 26/11/2007, 02:00
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: No puedo borrar!!

Sip ahora funciona correctamente.
lo que no entiendo es el "MYSQL_ASSOC"?

pero por lo demas comprendo la idea del script.
Gracias por la ayuda. Invaluable
  #12 (permalink)  
Antiguo 26/11/2007, 08:19
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Re: No puedo borrar!!

MySQL_ASSOC, es un argumento opcional cuyo valor es una constante y puede ser: MYSQL_ASSOC, MYSQL_NUM, y MYSQL_BOTH sirve solamente para obtener indices asociativos de clave y valor.

En este enlace se explica mejor el uso de esta constante:

http://www.php-es.com/function.mysql-fetch-array.html

Y creo que con esto terminamos con este tema..

Suerte con lo que estes haciendo...
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 06:02.