Foros del Web » Programando para Internet » PHP »

Ayuda por favor!!

Estas en el tema de Ayuda por favor!! en el foro de PHP en Foros del Web. Ya he mandado esta pregunta pero no me han respondido capas si cambio la forma de preguntar me ayuden, porque realmente me bloquee tengo el ...
  #1 (permalink)  
Antiguo 14/02/2004, 17:20
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
Ayuda por favor!!

Ya he mandado esta pregunta pero no me han respondido capas si cambio la forma de preguntar me ayuden, porque realmente me bloquee

tengo el siguiente codigo

Código PHP:
<?
$strSQL 
"select * from tb_mascotas where idMascota={$_GET["idMascota"]}";
$resultmod mysql_query($strSQL);
$rsmascotas mysql_fetch_array($resultmod);
?>
y provoca este error

Warning: Supplied argument is not a valid MySQL result resource in c:\Apache\Apache\htdocs\Mascotas\modificar.php on line 6

que es esta
$rsmascotas = mysql_fetch_array($resultmod);

Luego lo modifique por este porque lo vi en los foros
Código PHP:
<?
$strSQL 
"select * from tb_mascotas where idMascota=' ".$_GET["idMascota"]." ' ";
$resultmod mysql_query($strSQL);$rsmascotas mysql_fetch_array($resultmod);
?>
en este caso no produce ningun error pero tampoco actualiza los datos
Alguien me puede ayudar. Gracias
  #2 (permalink)  
Antiguo 14/02/2004, 19:04
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
Código PHP:
WarningSupplied argument is not a valid MySQL result resource in c:ApacheApachehtdocsMascotasmodificar.php on line 6 
este error aparece pq la consulta SQL que estás ejecutando contiene errores que peden ser que...o no existe la tabla consultada o que uno de los campos a los cuales haces referencia no existe en la tabla....

Código PHP:
$strSQL "select * from tb_mascotas where idMascota=' ".$_GET["idMascota"]." ' ";
$resultmod mysql_query($strSQL);
$rsmascotas mysql_fetch_array($resultmod); 
si el campo idMascota en tu tabla es de tipo Varchar debes colocarle las comillas, pero quitar los espacios que les haz dejado...es casi insignificante ela modificaci´no pero importante pq " 321 " no es igual a "321" o 321

Código PHP:
$strSQL "select * from tb_mascotas where idMascota='".$_GET["idMascota"]."' ";
$resultmod mysql_query($strSQL);
$rsmascotas mysql_fetch_array($resultmod); 

salu2
  #3 (permalink)  
Antiguo 15/02/2004, 10:37
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
HiTek:
El campo idMascota esta definido como campo de clave unica autonumerico.
Lo de las comillas ya lo hice y sigue sin funcionar, es decir el error antes mencionado no aparece pero tampoco actualiza.
Puede ser que tenga que especificar cuales son los campos a modificar en la consulta select en ves de ponerlos todos??:
Código PHP:
$strSQL "select * from tb_mascotas where idMascota='".$_GET["idMascota"]."' "
  #4 (permalink)  
Antiguo 15/02/2004, 11:28
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
otra solucion o no una solucion, pero en este momento podria ayudarnos es que con un ECHO antes de $strSql muestres el contenido de $_GET["idMascota"]
Código PHP:
Echo $_GET["idMascota"];
$strSQL "select * from tb_mascotas where idMascota='".$_GET["idMascota"]."' ";
Echo 
$strSql
coloca eso y ve que sucede

ahh otra cosa....la variable idMascota realmente la pasas por el método GET...osea por una URL????

salu2
  #5 (permalink)  
Antiguo 15/02/2004, 12:06
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
Si.
Sera eso lo que que esta mal??
Al construir la sentencia select lo que pretendo es que me muestre el registro seleccionado, para luego modificarlo y que se actualice.
  #6 (permalink)  
Antiguo 15/02/2004, 16:05
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
pero al ejecutar ru script qu fue lo que mostró????

postealo para que veamos que ocurre........salu2
  #7 (permalink)  
Antiguo 15/02/2004, 17:12
 
Fecha de Ingreso: septiembre-2003
Mensajes: 197
Antigüedad: 14 años, 3 meses
Puntos: 0
HiTek:

estuve trabajando en el codigo y en la pagina modifica.php puse el select y el formulario para que muestre el articulo buscado y el update lo hago en otra llamada modificado.php.

hasta ahi funciona y actualiza los campos que son texto, pero tengo un campo más donde pretendo actualizar la imagen (o sea borrar la vieja y dejar la nueva) la imagen se guarda en el servidor (ahi lo hace bien) y en la base guarda la referencia (ahi esta el problema), no lo actualiza

te paso el codigo de la pagina modificado.php, porque creo que ahi estoy escribiendo mal algo

hago la coneccion si me conecto dentro de un else pongo esto

Código PHP:
else{
$Foto $_FILES["Foto"];
$rutaimgs $_SERVER['DOCUMENT_ROOT']."/Mascotas/";
$prefijo time();
$peticion "update tb_mascotas set Codigo='$Codigo', Estado='$Estado', Caracteristicas='Caracteristicas' where idMascota ='$idMascota'";
if (
$Foto["name"$peticion.="Foto='$Foto["name"]'";

$idresult mysql_query($peticion);

if (
$Foto["name"]){
copy ($Foto["tmp_name"], $rutaimgs.$prefijo.$Foto["name"]);
if (
$FotoViejaunlink($rutaimgs.$FotoVieja);
}
if (
$idresult==0)
{
echo 
"la sentencia no se ejecuto.<br>";
echo 
mysql_error();
}
else{
$r=mysql_affected_rows($link);

if (
$r==0) echo "No hay ningun registro con Codigo=$oldCodigo.";
}
}
?> 
cuando trato de hacer dicha modificacion me da este error

Parse error: parse error in c:\Apache\Apache\htdocs\Mascotas\modificado.php on line 12

que se refiere a esta linea
Código PHP:
if ($Foto["name"$peticion.="Foto='$Foto["name"]'"
No se bien como recuperar este dato.

Espero ma halla explicado bien, cualquier cosa preguntame.
Espero tu respuesta
  #8 (permalink)  
Antiguo 15/02/2004, 21:08
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
PRUEBA ESTO!
Código PHP:
if ($Foto["name"]){ $peticion.="Foto='$Foto["name"]'";} 
Y VEAMOS...
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 08:11.