Foros del Web » Programando para Internet » PHP »

Quoteado correcto

Estas en el tema de Quoteado correcto en el foro de PHP en Foros del Web. que tal, me han dicho que el quoteado de esta sentencia mysql está mal, quisiera saber como es el correcto porque vi algunos posteos que ...
  #1 (permalink)  
Antiguo 09/07/2011, 14:59
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Quoteado correcto

que tal, me han dicho que el quoteado de esta sentencia mysql está mal, quisiera saber como es el correcto porque vi algunos posteos que hablan de esto pero no he podido aplicarlo, muchisimas gracias nuevamente por su ayuda.
Código:
$u = "UPDATE `test_database`.`torneo` SET `equipo` = '$_POST[equipo]',`puntaje` = '$_POST[puntaje]' WHERE ID=$_POST[id]";
  #2 (permalink)  
Antiguo 09/07/2011, 15:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Quoteado correcto

¿Y se puede saber exactamente lo que te han dicho?

Porque vamos, si recibes un mensaje de error es que está mal, si no, pues no.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/07/2011, 15:10
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Este es el mensaje de error que me aparece al querer hacer ese update, me han dicho que es culpa del quoteado !
Código:
	include 'connection.php';
	
	if(!isset($_POST['submit'])){
		$q = "SELECT * FROM torneo WHERE ID = $_GET[id]";
		$result = mysql_query($q);
		$equipo = mysql_fetch_array($result);
	}else{
	
		$u = "UPDATE `test_database`.`torneo` SET `equipo` = '$_POST[equipo]',`puntaje` = '$_POST[puntaje]' WHERE ID=$_POST[id]";
		mysql_query($u) or die (mysql_error());
		
		header('Location: index.php');
	}
  #4 (permalink)  
Antiguo 09/07/2011, 15: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: Quoteado correcto

¿Puedes imprimir la consulta antes de ejecutarla y mostrar lo que genera?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 09/07/2011, 15:43
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

sisi ! eso puedo hacerlo tranquilamente, lo que no puedo es hacer el update porque me da error de syntaxis
  #6 (permalink)  
Antiguo 09/07/2011, 16:11
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Quoteado correcto

Cita:
Iniciado por facuferrari Ver Mensaje
sisi ! eso puedo hacerlo tranquilamente, lo que no puedo es hacer el update porque me da error de syntaxis
A lo que me refería es que imprimas la consulta, y la postees.

El hecho de que solo tu la veas no ayuda para nada, mas ojos ayudan a descubrir mejor el problema, ¿no te parece?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 09/07/2011, 16:16
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

perdon peteketrueke no sé como hacer para imprimir la consulta en la pagina, podria ser algo como: echo $u ? quizas?

en ese caso me daria algo así:
Código:
UPDATE `torneo` SET `equipo` = 'gatos',`puntaje` = '6' WHERE ID=You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1


Código:
$u = "UPDATE `torneo` SET `equipo` = '$_POST[equipo]',`puntaje` = '$_POST[puntaje]' WHERE ID='$_POST[id]'";
Acabo de hacer esa modificacion en la sentencia MySQL y ya no me da ningun error pero no actualiza nada :S lo que cambie fue que en donde dice WHERE ID = quoteo el $_POST[id].

tambien me da error en estas lineas y séee que es por el quoteado ! malditas comillas !
Código:
equipo:  <input type="text" name="equipo"  value= "<?php echo $equipo['equipo'] ;?>" /> <br/>
    puntaje: <input type="text" name="puntaje" value= "<?php echo $equipo['puntaje'];?>" />

Ayuudaa por favorrrrrr

Última edición por facuferrari; 09/07/2011 a las 16:33
  #8 (permalink)  
Antiguo 09/07/2011, 16:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Quoteado correcto

Aquí hay un tema que habla sobre usar bien las comillas:
http://www.forosdelweb.com/f18/como-...s-bien-588701/

Con respecto a tu problema de actualización, es porque no aparece el ID requerido en la consulta, osea que no ses está enviando o bien, viene vacío.

PDTA: mi nick es pateketrueke, con "a"
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 09/07/2011, 16:47
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

esta vacio porque tengo problemas con las comillas ! porque esta mal quoteado ya sea en el formulario o en la sentencia mysql pero no puedo solucionarlo, rayosss

Creo que aquí esta mi error:

Código:
equipo:  <input type="text" name="equipo"  value="<?php echo $equipo['equipo'] ;?>" />
fijate que el cierre de de la etiqueta input no esta del color que deberia ir porque esta dentro de un quote

PD:perdón por la confucion con el nick !
  #10 (permalink)  
Antiguo 09/07/2011, 17:39
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Quoteado correcto

¿No te parece mas inteligente que nos muestres el código completo y los mensajes de error completos?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 09/07/2011, 17:59
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

Código:
<?php
	include 'connection.php';
	
	if(!isset($_POST['submit'])){
		$q = "SELECT * FROM torneo WHERE ID = $_GET[id]";
		$result = mysql_query($q);
		$equipo = mysql_fetch_array($result);
	}
	
?>

<h1>Modificar equipo:</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
	equipo:  <input type="text" name="equipo"  value="<?php echo $equipo['equipo'] ;?>" /> <br/>
    puntaje: <input type="text" name="puntaje" value="<?php echo $equipo['puntaje'];?>" />
    <input type="hidden" name="id" value"<?php echo $_GET['id']; ?>" />
    <input type="submit" name="submit" value="modify" />
</form>

<?php
if(isset($_POST['submit'])){
	
		$u = "UPDATE `torneo` SET `equipo` = '$_POST[equipo]',`puntaje` = '$_POST[puntaje]' WHERE ID = $_POST[id]";
		echo $u;
		mysql_query($u) or die (mysql_error());
		

}

?>
Código:
 ( ! ) Notice: Undefined variable: equipo in C:\wamp\www\futbol\modify.php on line 15 Call Stack #TimeMemoryFunctionLocation 10.0004373360{main}( )..\modify.php:0 " />
( ! ) Notice: Undefined index: id in C:\wamp\www\futbol\modify.php on line 16
Call Stack
#	Time	Memory	Function	Location
1	0.0004	373360	{main}( )	..\modify.php:0
" />
UPDATE `torneo` SET `equipo` = 'azul',`puntaje` = '3' WHERE ID = You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Gracias por la ayudaa !!
  #12 (permalink)  
Antiguo 09/07/2011, 19:28
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

cuando dice:

Código HTML:
equipo:  <input type="text" name="equipo"  value="<?PHP echo $name; ?>;" /> <br/> 
la parte de ?> donde cierra la etiqueta php me la toma como caracter especial de html :S
  #13 (permalink)  
Antiguo 09/07/2011, 19:38
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años
Puntos: 116
Respuesta: Quoteado correcto

No se si tenga algo que ver (Lo dudo), ps no he entendido tu problema, pero mira aqui:
value="<?PHP echo $name; ?> ; " />

Quita ese ; , que quede asi:
value="<?php echo $name; ?>" />
__________________
Programador jQuery & PHP
  #14 (permalink)  
Antiguo 09/07/2011, 20:08
 
Fecha de Ingreso: mayo-2011
Mensajes: 42
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Quoteado correcto

Gracias viejaa ! ya lo solucione, no se como, pero pegue el formulario en un archivo html, lo volvi a copiar en el php y voila ! funciona ! quedó así, por si alguien le saca el truco:

Código PHP:
<?php
    
include 'connection.php';
    
    if(!isset(
$_POST['submit'])){
        
$q "SELECT * FROM torneo WHERE ID = $_GET[id]";
        
$result mysql_query($q);
        
$equipo mysql_fetch_array($result);
        
$name $equipo['equipo'];
        
$puntaje $equipo['puntaje'];
        
$server $_SERVER['PHP_SELF'];
        
$id $equipo['id'];
    }
    
?>
<h1>Modificar equipo:</h1>
<form action="modifi.php" method="post">
    equipo:  <input type="text" name="equipo"  value="<?PHP echo $name ?>" /> <br/>
    puntaje: <input type="text" name="puntaje" value="<?php echo $puntaje ?>"/>
    <input type="hidden" name="id" value="<?php echo $id?>" />
    <input type="submit" name="submit" value="modify" />
</form>

<?php
if(isset($_POST['submit'])){

        
$u "UPDATE `torneo` SET `equipo` = '$_POST[equipo]',`puntaje` = '$_POST[puntaje]' WHERE ID = '$_POST[id]'";
        echo 
$u;
        
mysql_query($u) or die (mysql_error());
        
        
header ('Location: index.php');
        

}

?>

Etiquetas: correcto, mysql
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 20:15.