Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] borrar

Estas en el tema de borrar en el foro de PHP en Foros del Web. buenas, tengo una tabla en mysql con 2 columnas, lugares y capacidad, tengo que borrar dentro de ellas y se me complico este es el ...
  #1 (permalink)  
Antiguo 02/09/2013, 18:10
 
Fecha de Ingreso: septiembre-2012
Ubicación: montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 0
borrar

buenas, tengo una tabla en mysql con 2 columnas, lugares y capacidad, tengo que borrar dentro de ellas y se me complico este es el codigo que tengo y no veo el error, agradezco ayuda.

<html>
<body>
<form method="post" name= "formularioeliminar" >

lugar:<input type="text" name="lugar" > <br><br>

<input type="submit" value="Borrar"> <br><br>

<a href = 'formulariolugares.php'> Volver </a>

</form>
</body>
</html>

<?php
include("conecta.php");


function elimina($borra)
{
global $db_selected;
global $db;

$usertable = "prueba2";
$yourfield = "lugar";
$borra = $_POST['lugar'];

$borra = mysql_real_escape_string($borra,$db);

if ($borra != "")
{
$query = "DELETE FROM $usertable WHERE lugar = $borra ";
}
$result = mysql_query($query,$db);
echo $query;
}
elimina($borra);

?>
  #2 (permalink)  
Antiguo 02/09/2013, 18:17
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: borrar

¿Y no te muestra algún error?

¿Y la linea dónde imprimes la consulta que muestra?

Vamos, a simple vista la consulta se ve mal, sobre todo si la columna "lugar" es VARCHAR/TEXT pues dichos valores deberías ponerlos entre comillas.

Además fuera de la definición de la función no existe la variable $borra por si no lo habías notado y eso está mal.

Pero bueno, adivinar no podemos, así que no se qué tipo de ayuda necesitas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 02/09/2013, 18:27
 
Fecha de Ingreso: septiembre-2012
Ubicación: montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: borrar

agradezco tu pronta respuesta, mira errores no me da, tampoco funciona. lo de $borra esta definido aqui $borra = $_POST['lugar'];.
  #4 (permalink)  
Antiguo 02/09/2013, 18:31
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: borrar

Como te indicaron, defines borra dentro de tu función, por lo que no la puedes usar fuera de ella.

ejemplo

Código PHP:
Ver original
  1. function saludos(){
  2.   $hola="como estas";  //declaras hola dentro de saludos
  3. }
  4.  
  5. echo $hola;//aqui $hola no existe.
  #5 (permalink)  
Antiguo 02/09/2013, 18:44
 
Fecha de Ingreso: septiembre-2012
Ubicación: montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: borrar

en teoria este es el cambio?

include("conecta.php");



global $db_selected;
global $db;

$usertable = "prueba2";
$yourfield = "lugar";
$borra = $_POST['lugar'];
$borra = mysql_real_escape_string($borra,$db);

function elimina($borra)
{


if ($borra != "")
{
$query = "DELETE FROM $usertable WHERE lugar = $borra ";
}
$result = mysql_query($query,$db);
//echo $query;
}
elimina($borra);



tampoco funciona.
  #6 (permalink)  
Antiguo 02/09/2013, 20:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: borrar

Tu cambio está mal, las variables las estás usando fuera de contexto, por favor lee lo siguiente: http://php.net/manual/es/functions.user-defined.php

¿Además cómo sabes si anda bien o mal, o si sale un error o no si ni siquiera estás depurando tu código?

Prueba esto y nos dices:
Código PHP:
Ver original
  1. ini_set('display_errors', 1);
  2.  
  3. if ( ! empty($_POST['lugar'])) {
  4.  
  5. include("conecta.php");
  6.  
  7. $usertable = "prueba2";
  8. $yourfield = "lugar";
  9.  
  10. $borra = $_POST['lugar'];
  11. $borra = mysql_real_escape_string($borra,$db);
  12.  
  13. $query = "DELETE FROM $usertable WHERE lugar = $borra ";
  14. $result = mysql_query($query,$db) or die('ERROR=' . mysql_error() . "; SQL= $query");
  15.  
  16. }

¿Qué resulta?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: formulario, html, mysql, select, tabla
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 18:53.