Foros del Web » Programando para Internet » PHP »

me da error al hacer update:

Estas en el tema de me da error al hacer update: en el foro de PHP en Foros del Web. Tengo una pagina con un formulario y tal llamada: partits.php. Este formulario envia los datos por post a partits_2.php ( http://www.mallorcaweb.net/esporlesb.../partits_2.php ). el codigo de ...
  #1 (permalink)  
Antiguo 30/07/2004, 04:04
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 5 meses
Puntos: 4
Exclamación me da error al hacer update:

Tengo una pagina con un formulario y tal llamada: partits.php. Este formulario envia los datos por post a partits_2.php (http://www.mallorcaweb.net/esporlesb.../partits_2.php). el codigo de este último es:
Código PHP:
<?
require_once('../Connections/esporlesbc.php');
mysql_select_db($database_esporlesbc$esporlesbc);
$query_partits "UPDATE Partits SET fecha = $_POST['fecha'], 1_equip = $_POST['1_equip'], 1_dia = $_POST['1_dia'], 1_hora = $_POST['1_hora'], 1_pista = $_POST['1_pista'], 1_contrari = $_POST['1_contrari'], 2_equip = $_POST['2_equip'], 2_dia = $_POST['2_dia'], 2_hora = $_POST['2_hora'], 2_pista = $_POST['2_pista'], 2_contrari = $_POST['2_contrari'], 2_equip = $_POST['2_equip'], 3_dia = $_POST['3_dia'], 3_hora = $_POST['3_hora'], 3_pista = $_POST['3_pista'], 3_contrari = $_POST['3_contrari'], 3_equip = $_POST['3_equip'], 4_dia = $_POST['4_dia'], 4_hora = $_POST['4_hora'], 4_pista = $_POST['4_pista'], 4_contrari = $_POST['4_contrari'], 4_equip = $_POST['4_equip'], 5_dia = $_POST['5_dia'], 5_hora = $_POST['5_hora'], 5_pista = $_POST['5_pista'], 5_contrari = $_POST['5_contrari'], 5_equip = $_POST['5_equip'], 6_dia = $_POST['6_dia'], 6_hora = $_POST['6_hora'], 6_pista = $_POST['6_pista'], 6_contrari = $_POST['6_contrari'], 6_equip = $_POST['6_equip'], 7_dia = $_POST['7_dia'], 7_hora = $_POST['7_hora'], 7_pista = $_POST['7_pista'], 7_contrari = $_POST['7_contrari'], 7_equip = $_POST['7_equip'], 8_dia = $_POST['8_dia'], 8_hora = $_POST['8_hora'], 8_pista = $_POST['8_pista'], 8_contrari = $_POST['8_contrari'], 8_equip = $_POST['8_equip'], 9_dia = $_POST['9_dia'], 9_hora = $_POST['9_hora'], 9_pista = $_POST['9_pista'], 9_contrari = $_POST['9_contrari'], 9_equip = $_POST['9_equip'], 10_dia = $_POST['10_dia'], 10_hora = $_POST['10_hora'], 10_pista = $_POST['10_pista'], 10_contrari = $_POST['10_contrari'], 10_equip = $_POST['10_equip'], 11_dia = $_POST['11_dia'], 11_hora = $_POST['11_hora'], 11_pista = $_POST['11_pista'], 11_contrari = $_POST['11_contrari'], 11_equip = $_POST['11_equip'], 12_dia = $_POST['12_dia'], 12_hora = $_POST['12_hora'], 12_pista = $_POST['12_pista'], 12_contrari = $_POST['12_contrari'], 12_equip = $_POST['12_equip'], 13_dia = $_POST['13_dia'], 13_hora = $_POST['13_hora'], 13_pista = $_POST['13_pista'], 13_contrari = $_POST['13_contrari'], 13_equip = $_POST['13_equip'], 14_dia = $_POST['14_dia'], 14_hora = $_POST['14_hora'], 14_pista = $_POST['14_pista'], 14_contrari = $_POST['14_contrari'], 14_equip = $_POST['14_equip'], 15_dia = $_POST['15_dia'], 15_hora = $_POST['15_hora'], 15_pista = $_POST['15_pista'], 15_contrari = $_POST['15_contrari'], 15_equip = $_POST['15_equip'], 16_dia = $_POST['16_dia'], 16_hora = $_POST['16_hora'], 16_pista = $_POST['16_pista'], 16_contrari = $_POST['16_contrari'], 16_equip = $_POST['16_equip'], 17_dia = $_POST['17_dia'], 17_hora = $_POST['17_hora'], 17_pista = $_POST['17_pista'], 17_contrari= $_POST['17_contrari'], 17_equip = $_POST['17_equip'], 18_dia = $_POST['18_dia'], 18_hora = $_POST['18_hora'], 18_pista = $_POST['18_pista'], 18_contrari = $_POST['18_contrari'], 18_equip = $_POST['18_equip'], 19_dia = $_POST['19_dia'], 19_hora = $_POST['19_hora'], 19_pista = $_POST['19_pista'], 19_contrari = $_POST['19_contrari'], 19_equip = $_POST['19_equip'], 20_dia = $_POST['20_dia'], 20_hora = $_POST['20_hora'], 20_pista = $_POST['20_pista'], 20_contrari = $_POST['20_contrari";
mysql_query($query_partits$esporlesbc) or die(mysql_error());
?>
y me da el siguiente error al actualizar-lo:

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in /home/sites/www.mallorcaweb.net/web/esporlesbc/admin/partits_2.php on line 5

la linea 5 corresponde al update.

Please ayuda

Última edición por TCL_ZIP; 30/07/2004 a las 04:05
  #2 (permalink)  
Antiguo 30/07/2004, 04:09
Avatar de carlosechelon  
Fecha de Ingreso: octubre-2003
Ubicación: campana.baires
Mensajes: 71
Antigüedad: 20 años, 5 meses
Puntos: 0
hola: mira.si el script lo copiaste tal cual etaba en tu site revisa lo sigueinte:

'20_contrari..... la ultima variable no esta cerrada con ' ni con Corchetes.......

salu2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,y ojala sea eso! carlos
  #3 (permalink)  
Antiguo 30/07/2004, 04:12
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 5 meses
Puntos: 4
No, se ve que ese era uno de los fallos pero me sigue igual
  #4 (permalink)  
Antiguo 30/07/2004, 04:59
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Esa no es la forma correcta de usar arrays dentro de una cadena. Revisa http://www.php.net/manual/en/language.types.string.php

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 30/07/2004, 05:02
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 5 meses
Puntos: 4
No lo pillo? porque no es forma? en esa pagina no encuentro nada de update
  #6 (permalink)  
Antiguo 30/07/2004, 05:26
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Claro que no, pero es que uno de los fallos es que tal como estas creando la cadena no estas tomando bien los datos. En ese link pone como meter arrays dentro de una cadena, que es lo que estas haciendo mal.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 30/07/2004, 05:37
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 5 meses
Puntos: 4
No entiendo, por más veces que miro la pagina no logro entender que hago mal te refieres a que deveria poner '$_POST['fecha']' ? estas comillas antes i después del post? no haran interferencias con las demàs pero?
  #8 (permalink)  
Antiguo 30/07/2004, 06:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No TCL_ZIP .. a usar {} para encerrar a tu llamada a un elemento de un array (por qué supongo que conoceras que $_POST es un array? .. )

Fijate que hablas de "no veo nada sobre UPDATE" .. Ahí no vas a encontrar nada de eso .. debes comprender que tu "UPDATE" es una sentencia SQL y que para PHP eso es una bulgar cadena (string) .. cuando la "ejecutes" con tu función xxxx_query() ahí te devolverá algo que obtenga de tu BD .. pero -antes- para PHP eso es una cadena cualquiera.

Formas de solventarlo:

1) Concatenando:
Código PHP:
$query_partits "UPDATE Partits SET fecha ='"$_POST['fecha']."', 1_equip = '".$_POST['1_equip']."', .. etc ... "
Fijate también que te faltó el 'para encerrar a tu dato string' en la sentencia SQL (pero esto ya es própio de la sintax SQL no de PHP).

2) LLamando a array en tu cadena con su sintax adecuada:
Código PHP:
$query_partits "UPDATE Partits SET fecha ='{$_POST['fecha']}', 1_equip = '{$_POST['1_equip']}', .. etc ... "
Empieza a tener claro que es parte de "PHP" y que de tu Basde de datos (me refiero a SQL principalmente) .. sino, siempre tendrás problemas de este estilo.

El objetivo aquí .. cuando "interactuas" con una Base de datos con su própio lenguaje (SQL) y sus funciones para "hacerlo ejecutar" es siempre componer la sentencia SQL adecuada como si de una cadena cualquiera se tratase "concatenando" tus variables PHP que puedieras tener o con ayuda de estructuras de control que al final dén como resultado una cadena SQL que ejecutaras.

Un saludo,
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 09:58.