Foros del Web » Programando para Internet » PHP »

Problema Actualizar datos MySQL

Estas en el tema de Problema Actualizar datos MySQL en el foro de PHP en Foros del Web. Que tal buen dia, quisiera un poc de ayuda, resulta que al intentar actualizar mis datos de mi base de datos me sale este error: ...
  #1 (permalink)  
Antiguo 23/05/2013, 11:26
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Problema Actualizar datos MySQL

Que tal buen dia, quisiera un poc de ayuda, resulta que al intentar actualizar mis datos de mi base de datos me sale este error:

Cannot query the database.
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 '='http://www.yourdomain.com/', ='/home/user/public_html/', ='localhost', ='Us' at line 2

La sentencia es esta:

<form name="form1" method="post" action="app/function.php?which=SETTINGS&t1=URL&t2=PATH&return= settings<?php echo $x; ?>&t3=HOST&t4=USER&t5=RAK&t6=WSU&t7=DNR&t8=AUTOTER M">

Mi archivo function es este:

<?php
include '../../inc/sqlinf.php';

$a = $_POST['1'];
$b = $_POST['2'];
$c = $_POST['3'];
$d = $_POST['4'];
$e = $_POST['5'];
$f = $_POST['6'];
$g = $_POST['7'];
$h = $_POST['8'];
$i = $_POST['9'];
$j = $_POST['10'];

if ($edit == 'tru') {

$v ='UPDATE $which SET';
$w =" WHERE ID = '$id'";

}else{
$v ='INSERT INTO $which SET';
$w = $nil;
}

if (empty($b)) {$bc = $no; } else {$bc=',';}
if (empty($c)) {$cc = $no; } else {$cc=',';}
if (empty($d)) {$dc = $no; } else {$dc=',';}
if (empty($e)) {$ec = $no; } else {$ec=',';}
if (empty($f)) {$fc = $no; } else {$fc=',';}
if (empty($g)) {$gc = $no; } else {$gc=',';}
if (empty($h)) {$hc = $no; } else {$hc=',';}
if (empty($i)) {$ic = $no; } else {$ic=',';}
if (empty($j)) {$jc = $no; } else {$jc=',';}
if (empty($k)) {$kc = $no; } else {$kc=',';}

if (empty($a)) {$t1= $nono; $q1 = $abc; $q2 = $def;}else{$q1a="'"; $q2a="=";}
if (empty($b)) {$t2= $nono; $q1 = $abc; $q2 = $def;}else{$q1b="'"; $q2b="=";}
if (empty($c)) {$t3= $nono; $q1 = $abc; $q2 = $def;}else{$q1c="'"; $q2c="=";}
if (empty($d)) {$t4= $nono; $q1 = $abc; $q2 = $def;}else{$q1d="'"; $q2d="=";}
if (empty($e)) {$t5= $nono; $q1 = $abc; $q2 = $def;}else{$q1e="'"; $q2e="=";}
if (empty($f)) {$t6= $nono; $q1 = $abc; $q2 = $def;}else{$q1f="'"; $q2f="=";}
if (empty($g)) {$t7= $nono; $q1 = $abc; $q2 = $def;}else{$q1g="'"; $q2g="=";}
if (empty($h)) {$t8= $nono; $q1 = $abc; $q2 = $def;}else{$q1h="'"; $q2h="=";}
if (empty($i)) {$t9= $nono; $q1 = $abc; $q2 = $def;}else{$q1i="'"; $q2i="=";}
if (empty($j)) {$t10=$nono; $q1 = $abc; $q2 = $def;}else{$q1j="'"; $q2j="=";}

$sql = "$v
$t1 $q2a$q1a$a$q1a$bc
$t2 $q2b$q1b$b$q1b$cc
$t3 $q2c$q1c$c$q1c$dc
$t4 $q2d$q1d$d$q1d$ec
$t5 $q2e$q1e$e$q1e$fc
$t6 $q2f$q1f$f$q1f$gc
$t7 $q2g$q1g$g$q1g$hc
$t8 $q2h$q1h$h$q1h$ic
$t9 $q2i$q1i$i$q1i$jc
$t10 $qj$q1j$j$q1j$kc
$w
";
$query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

$variable = "../$return.php";
include '../resend.php';
?>

No encuentro cual es el problema :C, Les agradezco de antemano su ayuda
  #2 (permalink)  
Antiguo 23/05/2013, 11:35
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema Actualizar datos MySQL

Cual es la sentencia perdon??????

Podrias mostrar tu consulta sql tal como la estas generando??

Porque sin duda esta mala
  #3 (permalink)  
Antiguo 23/05/2013, 11:39
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Problema Actualizar datos MySQL

Segun tu codigo esta es tu query

Código:
$sql = "$v
$t1 $q2a$q1a$a$q1a$bc
$t2 $q2b$q1b$b$q1b$cc
$t3 $q2c$q1c$c$q1c$dc
$t4 $q2d$q1d$d$q1d$ec
$t5 $q2e$q1e$e$q1e$fc
$t6 $q2f$q1f$f$q1f$gc
$t7 $q2g$q1g$g$q1g$hc
$t8 $q2h$q1h$h$q1h$ic
$t9 $q2i$q1i$i$q1i$jc
$t10 $qj$q1j$j$q1j$kc
$w
";
es incorrecta, checate el manual de mysql http://dev.mysql.com/doc/refman/5.0/es/ o de plano indica exactamente que quieres hacer, porque no tiene ninguna estructura
  #4 (permalink)  
Antiguo 23/05/2013, 11:44
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por alex1084 Ver Mensaje
Cual es la sentencia perdon??????

Podrias mostrar tu consulta sql tal como la estas generando??

Porque sin duda esta mala
Que tal, discupa apenas estoy aprendiendo sobre la marcha, te pego todo el codigo de los archivos que se manejan,

settings.php

<form name="form1" method="post" action="app/function.php?which=SETTINGS&t1=URL&t2=PATH&return= settings<?php echo $x; ?>&t3=HOST&t4=USER&t5=RAK&t6=WSU&t7=DNR&t8=AUTOTER M">


query.php

<?php
$id = $row["ID"];
$url = $row["URL"];
$path = $row["PATH"];
$username = $row["USERNAME"];
$password = $row["PASSWORD"];
$ip = $row["IP"];
$host = $row['HOST'];
$rak = $row["RAK"];
$user = $row["USER"];
$receiver_email = $row["RECEIVER_EMAIL"];
$currency = $row["CURRENCY"];
$logo_url = $row["LOGO_URL"];
$success_url = $row["SUCCESS_URL"];
$cancel_url = $row["CANCEL_URL"];

$name = $row["NAME"];
$whmname = $row["WHMNAME"];
$monthly = $row["MONTHLY"];
$quarterly = $row["QUARTERLY"];
$semiannually = $row["SEMIANNUALLY"];
$annually = $row["ANNUALLY"];
$twoyears = $row["2YEARS"];
$freetrial = $row["FREETRIAL"];

$yy = $row["YY"];
$nn = $row["NN"];

$wsu = $row["WSU"];

$subdomain = $row["SUBDOMAIN"];

$sub = $row["SUB"];
$free = $row["FREE"];
$syn = $row["SYN"];

$dnr = $row["DNR"];

$from = $row["FROOM"];
$subject = $row["SUBJECT"];
$message = $row["MESSAGE"];

$ig = $row["IG"];
$paackage = $row["PACKAGE"];
$signupdate = $row["SIGNUPDATE"];
$payer_email = $row["PAYER_EMAIL"];
$nextpayment = $row["NEXTPAYMENT"];
$lastpayment = $row["LASTPAYMENT"];
$dn = $row["DOMAIN"];
$status = $row["STATUS"];

$cpw = $row["CPW"];

$subid = $row["SUBID"];

$s_signup = $row["S_SIGNUP"];
$s_cancel = $row["S_CANCEL"];
$s_modify = $row["S_MODIFY"];
$s_failure = $row["S_FAILURE"];
$s_payment = $row["S_PAYMENT"];
$s_eot = $row["S_EOT"];

$uni = $row["UNI"];

$autoterm = $row["AUTOTERM"];

?>

function.php

<?php
include '../../inc/sqlinf.php';

$a = $_POST['1'];
$b = $_POST['2'];
$c = $_POST['3'];
$d = $_POST['4'];
$e = $_POST['5'];
$f = $_POST['6'];
$g = $_POST['7'];
$h = $_POST['8'];
$i = $_POST['9'];
$j = $_POST['10'];

if ($edit == 'tru') {

$v ='UPDATE $which SET';
$w =" WHERE ID = '$id'";

}else{
$v ='INSERT INTO $which SET';
$w = $nil;
}

if (empty($b)) {$bc = $no; } else {$bc=',';}
if (empty($c)) {$cc = $no; } else {$cc=',';}
if (empty($d)) {$dc = $no; } else {$dc=',';}
if (empty($e)) {$ec = $no; } else {$ec=',';}
if (empty($f)) {$fc = $no; } else {$fc=',';}
if (empty($g)) {$gc = $no; } else {$gc=',';}
if (empty($h)) {$hc = $no; } else {$hc=',';}
if (empty($i)) {$ic = $no; } else {$ic=',';}
if (empty($j)) {$jc = $no; } else {$jc=',';}
if (empty($k)) {$kc = $no; } else {$kc=',';}

if (empty($a)) {$t1= $nono; $q1 = $abc; $q2 = $def;}else{$q1a="'"; $q2a="=";}
if (empty($b)) {$t2= $nono; $q1 = $abc; $q2 = $def;}else{$q1b="'"; $q2b="=";}
if (empty($c)) {$t3= $nono; $q1 = $abc; $q2 = $def;}else{$q1c="'"; $q2c="=";}
if (empty($d)) {$t4= $nono; $q1 = $abc; $q2 = $def;}else{$q1d="'"; $q2d="=";}
if (empty($e)) {$t5= $nono; $q1 = $abc; $q2 = $def;}else{$q1e="'"; $q2e="=";}
if (empty($f)) {$t6= $nono; $q1 = $abc; $q2 = $def;}else{$q1f="'"; $q2f="=";}
if (empty($g)) {$t7= $nono; $q1 = $abc; $q2 = $def;}else{$q1g="'"; $q2g="=";}
if (empty($h)) {$t8= $nono; $q1 = $abc; $q2 = $def;}else{$q1h="'"; $q2h="=";}
if (empty($i)) {$t9= $nono; $q1 = $abc; $q2 = $def;}else{$q1i="'"; $q2i="=";}
if (empty($j)) {$t10=$nono; $q1 = $abc; $q2 = $def;}else{$q1j="'"; $q2j="=";}

$sql = "$v
$t1 $q2a$q1a$a$q1a$bc
$t2 $q2b$q1b$b$q1b$cc
$t3 $q2c$q1c$c$q1c$dc
$t4 $q2d$q1d$d$q1d$ec
$t5 $q2e$q1e$e$q1e$fc
$t6 $q2f$q1f$f$q1f$gc
$t7 $q2g$q1g$g$q1g$hc
$t8 $q2h$q1h$h$q1h$ic
$t9 $q2i$q1i$i$q1i$jc
$t10 $qj$q1j$j$q1j$kc
$w
";
$query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

$variable = "../$return.php";
include '../resend.php';
?>
  #5 (permalink)  
Antiguo 23/05/2013, 11:46
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por Bernoo Ver Mensaje
Segun tu codigo esta es tu query

Código:
$sql = "$v
$t1 $q2a$q1a$a$q1a$bc
$t2 $q2b$q1b$b$q1b$cc
$t3 $q2c$q1c$c$q1c$dc
$t4 $q2d$q1d$d$q1d$ec
$t5 $q2e$q1e$e$q1e$fc
$t6 $q2f$q1f$f$q1f$gc
$t7 $q2g$q1g$g$q1g$hc
$t8 $q2h$q1h$h$q1h$ic
$t9 $q2i$q1i$i$q1i$jc
$t10 $qj$q1j$j$q1j$kc
$w
";
es incorrecta, checate el manual de mysql [url]http://dev.mysql.com/doc/refman/5.0/es/[/url] o de plano indica exactamente que quieres hacer, porque no tiene ninguna estructura
Que tal amigo, si esa es la query pero el detalle es que no se tanto de programacion apenas estoy aprendiendo modificando este codigo PHP de un script que tenia y que funcionaba hace 3 años pero ahora no funciona y no se el porque.
  #6 (permalink)  
Antiguo 23/05/2013, 11:47
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Osea se que el problema esta en el uso de las ' y " junto con el manejo de la query y que cuando se hace la inyeccion no interpreta bien los datos pero no entiendo como estructurarlo para que lo interprete de buena forma
  #7 (permalink)  
Antiguo 23/05/2013, 11:52
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema Actualizar datos MySQL

mira se nota que no tienes idea de lo que estas haciendo

Antes de esta linea

Código PHP:
Ver original
  1. $query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

coloca esto

Código PHP:
Ver original
  1. echo $sql;

por lo que deberia quedarte asi ya modificado

Código PHP:
Ver original
  1. echo $sql;
  2. $query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

Luego lo que te devuelva porque eso te debería mostrar algo mas en la pantalla nos lo muestras aqui ...
  #8 (permalink)  
Antiguo 23/05/2013, 11:57
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por alex1084 Ver Mensaje
mira se nota que no tienes idea de lo que estas haciendo

Antes de esta linea

Código PHP:
Ver original
  1. $query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

coloca esto

Código PHP:
Ver original
  1. echo $sql;

por lo que deberia quedarte asi ya modificado

Código PHP:
Ver original
  1. echo $sql;
  2. $query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

Luego lo que te devuelva porque eso te debería mostrar algo mas en la pantalla nos lo muestras aqui ...
Que tal puse el codigo asi:

echo $sql = "$v
$t1 $q2a$q1a$a$q1a$bc
$t2 $q2b$q1b$b$q1b$cc
$t3 $q2c$q1c$c$q1c$dc
$t4 $q2d$q1d$d$q1d$ec
$t5 $q2e$q1e$e$q1e$fc
$t6 $q2f$q1f$f$q1f$gc
$t7 $q2g$q1g$g$q1g$hc
$t8 $q2h$q1h$h$q1h$ic
$t9 $q2i$q1i$i$q1i$jc
$t10 $qj$q1j$j$q1j$kc
$w
";
$query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());

$variable = "../$return.php";
include '../resend.php';

Y me salio esto:

INSERT INTO $which SET ='http://www.yourdomain.com/', ='/home/user/public_html/', ='localhost', ='Username', ='6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsfsd86fd8sfv78 f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsfsd86fd 8sfv78f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsf sd86fd8sfv78f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d', ='http://www.yourdomain.com', ='http://www.yourdomain.com', ='NO' Cannot query the database.
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 '='http://www.yourdomain.com/', ='/home/user/public_html/', ='localhost', ='Us' at line 2
  #9 (permalink)  
Antiguo 23/05/2013, 12:00
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Problema Actualizar datos MySQL

Cita:
INSERT INTO $which SET ='http://www.yourdomain.com/', ='/home/user/public_html/', ='localhost', ='Username', ='6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsfsd86fd8sfv78 f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsfsd86fd 8sfv78f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsf sd86fd8sfv78f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d', ='http://www.yourdomain.com', ='http://www.yourdomain.com', ='NO'
ES simple el error la consulta que se supone quieres ejecutar ni por cerca a una consulta sql...

Lee un poco para que aprendas a construir una consulta sql porque de lo contrario es por gusto lo que quieres hacer...
  #10 (permalink)  
Antiguo 23/05/2013, 12:02
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por alex1084 Ver Mensaje
ES simple el error la consulta que se supone quieres ejecutar ni por cerca a una consulta sql...

Lee un poco para que aprendas a construir una consulta sql porque de lo contrario es por gusto lo que quieres hacer...
El detalle es que es un script que tengo desde hace años y lo baje de una pagina web dedicada a hacer scripts valga la redundancia, hace años si funcionaba pero no se porque al querer usarla ahora no funciona
  #11 (permalink)  
Antiguo 23/05/2013, 12:05
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Problema Actualizar datos MySQL

espera, le voy entendiendo, creo que en el where hay algo mal, haber imprime la variable $w antesl del $sql...
  #12 (permalink)  
Antiguo 23/05/2013, 12:14
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema Actualizar datos MySQL

Código SQL:
Ver original
  1. INSERT INTO $which
  2.    SET ='http://www.yourdomain.com/',
  3.    ='/home/user/public_html/',
  4.    ='localhost',
  5.    ='Username',
  6.     ='6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsfsd86fd8sfv78  
  7.   f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsfsd86fd  
  8.   8sfv78f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d6f1sdfsf  
  9.   sd86fd8sfv78f681zf6d6f1sdfsfsd86fd8sfv78f681zf6d',  
  10.    ='http://www.yourdomain.com',  
  11.    ='http://www.yourdomain.com',  
  12.    ='NO'
Esto ni siquiera es una sintaxis alternativa de un INSERT. No tengo ni idea de cómo es posible que digas que eso funcionó en algún momento, porque con esa forma eso es totalmente imposible.

Esta sintaxis, poco ortodoxa, es soportada en tanto y cuanto se indique uno a uno los campos en donde se deben insertar los datos (que ya de por sí están espantosamente mal manejados). Pero no está ninguno de ellos.
Estás son las dos sintaxis soportadas por MySQL:
Código MySQL:
Ver original
  1. INSERT [INTO] tbl_name [(col_name,...)]
  2. VALUES (expr ,...)

O:
Código MySQL:
Ver original
  1. INSERT [INTO] tbl_name
  2. SET col_name=expr , ...
Donde col_name es el nombre de columna y expr el valor a insertar.

Obviamente, tu query no respeta ninguna...

Brenoo: No existe WHERE en el INSERT...

Nota final: No veo dónde tomaría el valor "$which ", por lo que lo está tomando como nombre de tabla, pero eso bien podría generar otro error sintáctico, porque MySQL espera que un nombre de tabla comience con una letra...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #13 (permalink)  
Antiguo 23/05/2013, 12:17
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Problema Actualizar datos MySQL

a simple vista no parece una sintaxis valida, pero si fueran observadores se darian cuenta que esta haciedo un update normal (Ortodoxo), mas arriba hay ciertas validaciones donde se indica si usa where o no, en si no esta mal, es una forma muy tradicional, el error no es la sintaxis, segun yo es un dato que hace falta o se esta colando
  #14 (permalink)  
Antiguo 23/05/2013, 12:19
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema Actualizar datos MySQL

El echo está devolviendo un INSERT, no un UPDATE, por lo que no corre el WHERE, Brenoo.
De todos modos mi nota final sigue siendo válida: No veo dónde toma el nombre de la tabla.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #15 (permalink)  
Antiguo 23/05/2013, 12:21
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por Bernoo Ver Mensaje
a simple vista no parece una sintaxis valida, pero si fueran observadores se darian cuenta que esta haciedo un update normal (Ortodoxo), mas arriba hay ciertas validaciones donde se indica si usa where o no, en si no esta mal, es una forma muy tradicional, el error no es la sintaxis, segun yo es un dato que hace falta o se esta colando
Perdon, es INSERT;
  #16 (permalink)  
Antiguo 23/05/2013, 12:23
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Problema Actualizar datos MySQL

la validacion esta en el archivo function.php

Código:
if ($edit == 'tru') {

$v ='UPDATE $which SET';
$w =" WHERE ID = '$id'";

}else{
$v ='INSERT INTO $which SET';
$w = $nil;
}
  #17 (permalink)  
Antiguo 23/05/2013, 12:25
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema Actualizar datos MySQL

Genial...

Insisto: ¿En donde toma valor $which?

Busca la línea y dímelo, porque yo no la veo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #18 (permalink)  
Antiguo 23/05/2013, 12:26
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por Bernoo Ver Mensaje
a simple vista no parece una sintaxis valida, pero si fueran observadores se darian cuenta que esta haciedo un update normal (Ortodoxo), mas arriba hay ciertas validaciones donde se indica si usa where o no, en si no esta mal, es una forma muy tradicional, el error no es la sintaxis, segun yo es un dato que hace falta o se esta colando
Amigos sin enfadar a nadie, el script funcionaba, de hecho lo use casi 4 meses hasta que mi programado (que despedi despues) acabo otro script mas "amigable" con el manejo de templates.

Ahora lo retomo porque necesito aplicar este script en un sitio que estoy haciendo,

Brunoo
Intento imprimir la variable $w pero no me aparece nada en pantalla no se porque razon ya lo intente muchas veces, de hecho no me deja imprimir ninguna variable antes de $sql, y no se el porque, y tienes razon si tiene Where, revisando http://dev.mysql.com/doc/refman/5.0/es/update.html aparece la sintaxis y aparece que si tiene where,

Otra opcion para imprimir que no sea echo $w =" WHERE ID = '$id'";??
  #19 (permalink)  
Antiguo 23/05/2013, 12:29
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema Actualizar datos MySQL

Cita:
Amigos sin enfadar a nadie, el script funcionaba, de hecho lo use casi 4 meses hasta que mi programado (que despedi despues) acabo otro script mas "amigable" con el manejo de templates.

Ahora lo retomo porque necesito aplicar este script en un sitio que estoy haciendo,
Pues es muy probable que la cosa no sea tan simple como volverlo a usar. A mi entender, ese srcipt depende de otros objetos, porque están faltando estructuras de la sentencia INSERT y del UPDATE que son críticas.

¿Se entiende lo que de menciono respecto a campos, nombres de tabla, etc.?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #20 (permalink)  
Antiguo 23/05/2013, 12:30
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Problema Actualizar datos MySQL

pues imprime los valores de las variables que tu script va tomando, por ejemplo verifica que valor toma $edit y despues imprime tu variable $w, no importa si es con echo, si no te imprime nada es porque estan vacias, analizalo bien
  #21 (permalink)  
Antiguo 23/05/2013, 12:31
 
Fecha de Ingreso: abril-2008
Mensajes: 13
Antigüedad: 16 años
Puntos: 0
Respuesta: Problema Actualizar datos MySQL

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Genial...

Insisto: ¿En donde toma valor $which?

Busca la línea y dímelo, porque yo no la veo.
En el archivo settings.php aparece:

<?PHP
$SQL = "SELECT * from SETTINGS";
$result = mysql_query( $SQL );
while( $row = mysql_fetch_array( $result ) ) {
include 'query.php';}
if (empty($id)) {$x='&edit=';}else{$x='&edit=tru';}
?>

<form name="form1" method="post" action="app/function.php?which=SETTINGS&t1=URL&t2=PATH&return= settings<?php echo $x; ?>&t3=HOST&t4=USER&t5=RAK&t6=WSU&t7=DNR&t8=AUTOTER M">
  #22 (permalink)  
Antiguo 23/05/2013, 12:38
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema Actualizar datos MySQL

Perfecto... WHICH es el ID de un parámetro de entrada... pero no es una variable.

Te hago notar esto:
settings.php
Código PHP:
Ver original
  1. <form name="form1" method="post" action="app/function.php?which=SETTINGS&t1=URL&t2=PATH&return= settings<?php echo $x; ?>&t3=HOST&t4=USER&t5=RAK&t6=WSU&t7=DNR&t8=AUTOTER M">

query.php
Código PHP:
Ver original
  1. <?php
  2. $id = $row["ID"];
  3. $url = $row["URL"];
  4. $path = $row["PATH"];
  5. $username = $row["USERNAME"];
  6. $password = $row["PASSWORD"];
  7. $ip = $row["IP"];
  8. $host = $row['HOST'];
  9. $rak = $row["RAK"];
  10. $user = $row["USER"];
  11. $receiver_email = $row["RECEIVER_EMAIL"];
  12. $currency = $row["CURRENCY"];
  13. $logo_url = $row["LOGO_URL"];
  14. $success_url = $row["SUCCESS_URL"];
  15. $cancel_url = $row["CANCEL_URL"];
  16.  
  17. $name = $row["NAME"];
  18. $whmname = $row["WHMNAME"];
  19. $monthly = $row["MONTHLY"];
  20. $quarterly = $row["QUARTERLY"];
  21. $semiannually = $row["SEMIANNUALLY"];
  22. $annually = $row["ANNUALLY"];
  23. $twoyears = $row["2YEARS"];
  24. $freetrial = $row["FREETRIAL"];
  25.  
  26. $yy = $row["YY"];
  27. $nn = $row["NN"];
  28.  
  29. $wsu = $row["WSU"];
  30.  
  31. $subdomain = $row["SUBDOMAIN"];
  32.  
  33. $sub = $row["SUB"];
  34. $free = $row["FREE"];
  35. $syn = $row["SYN"];
  36.  
  37. $dnr = $row["DNR"];
  38.  
  39. $from = $row["FROOM"];
  40. $subject = $row["SUBJECT"];
  41. $message = $row["MESSAGE"];
  42.  
  43. $ig = $row["IG"];
  44. $paackage = $row["PACKAGE"];
  45. $signupdate = $row["SIGNUPDATE"];
  46. $payer_email = $row["PAYER_EMAIL"];
  47. $nextpayment = $row["NEXTPAYMENT"];
  48. $lastpayment = $row["LASTPAYMENT"];
  49. $dn = $row["DOMAIN"];
  50. $status = $row["STATUS"];
  51.  
  52. $cpw = $row["CPW"];
  53.  
  54. $subid = $row["SUBID"];
  55.  
  56. $s_signup = $row["S_SIGNUP"];
  57. $s_cancel = $row["S_CANCEL"];
  58. $s_modify = $row["S_MODIFY"];
  59. $s_failure = $row["S_FAILURE"];
  60. $s_payment = $row["S_PAYMENT"];
  61. $s_eot = $row["S_EOT"];
  62.  
  63. $uni = $row["UNI"];
  64.  
  65. $autoterm = $row["AUTOTERM"];
  66.  
  67. ?>
Aquí se ve como pasas los valores de URL, PATH, etc, a sus variables.

¿En qué momento pasas el valor de WHICH a $which?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: html, mysql, sql
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 00:21.