Foros del Web » Programando para Internet » PHP »

Código fantasma¡¡

Estas en el tema de Código fantasma¡¡ en el foro de PHP en Foros del Web. Por lo menos eso me parece a mí, me imagino que por novata, os cuento: Tengo el siguiente código: Código PHP: ... ..... ......... <?php ...
  #1 (permalink)  
Antiguo 16/12/2009, 17:58
 
Fecha de Ingreso: octubre-2008
Mensajes: 87
Antigüedad: 15 años, 6 meses
Puntos: 0
Código fantasma¡¡

Por lo menos eso me parece a mí, me imagino que por novata, os cuento:
Tengo el siguiente código:
Código PHP:
...
.....
.........
<?php
  $db_conexion
mysql_connect("$sql_host""$sql_usuario""$sql_pass") or die(header ("Location:P_cerrarsesion.php")) or die(mysql_error());
  
mysql_select_db("$sql_db") or die(mysql_error());

  
mysql_query ("SET NAMES 'utf8'");
  
$personal_consulta mysql_query("SELECT id_pers,nombre,apellidos,telefono,mail,foto,cv,descripEsp,descripIng,tipo FROM $sql_tabla2 WHERE id_pers='".$id_pers."';") or die(header ("Location:P_cerrarsesion.php"));
 
  
  if (
mysql_num_rows($personal_consulta)==1){
          
//BLOQUE 1
       
$row=mysql_fetch_array($personal_consulta);//es única
       
echo ("<script language=\"javascript\">");
       echo (
"document.bloque1.nombre.value='".$row['nombre']."';");
       echo (
"document.bloque1.apellidos.value='".$row['apellidos']."';");
       echo (
"document.bloque1.telefono.value='".$row['telefono']."';");
       echo (
"document.bloque1.mail.value='".$row['mail']."';");
       echo 
"</script>"
       
//BLOQUE 2
       
echo ("<script language=\"javascript\">");
       echo (
"document.bloque3.descripEsp.value='".$row['descripEsp']."';");
       echo (
"document.bloque4.descripIng.value='".$row['descripIng']."';");
       echo 
"</script>";

....
.....
Antes de este código tengo los formularios a los que intento dar los valores que obtengo de una BD.
El código reacciona así:
- lo que he titulado BLOQUE 1 si actualiza sus valores y el BLOQUE 2 no lo hace.

Si cambio las instrucciones de bloques (probando con distintas combinaciones de instrucciones) hace cada vez una cosa: lo que se ejecuta deja de hacerlo, lo que no lo hacia actualiza el formulario, o dejan de funcionar todas...
Lo que no hace es actualizar todas.

Sé que esta no es la forma más correcta de actualizar un formulario con valores de una base de datos, pero me gustaría saber que ocurre y porqué no funciona.

Muchas gracias por la ayuda
  #2 (permalink)  
Antiguo 16/12/2009, 18:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Código fantasma¡¡

cuantas veces usas mysql_fetch_array() antes y entre tus bloques??

te sugiero también hagas un var_dump() de $row justo después de asignarla para que analices lo que sucede...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 16/12/2009, 18:18
 
Fecha de Ingreso: octubre-2008
Mensajes: 87
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Código fantasma¡¡

Gracias por la ayuda, te cuento:
Sólo la usa en esa posición y al ejecutar la función var_dump(), los valores devueltos son los correctos, igual a los de la BD.

Soy novata y no sé si tendrá que ver, pero "descripEsp" es un textarea que es un editor HTML de los que bajas de forma gratuita para que el cliente pueda introducir los datos. ¿esto no tiene nada que ver no?. En alguna de las combinaciones si ha mostrado los datos de las textarea el problema es q no muestra todos a la vez, siempre fallan algunos.
  #4 (permalink)  
Antiguo 16/12/2009, 18:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Código fantasma¡¡

de hecho si tiene que ver, y mucho... pero solo el hecho de que es un <textarea/> donde quiere mostrar su valor...

eso es porque <textarea/> no usa el atributo value para mostrar el texto... bien, en Javascript puedes asignar dicho valor usando innerHTML en su lugar

osea, en HTML
Código HTML:
<textarea value="FAIL: esto no existe :S"/>
<textarea>AQUI: va el valor correcto</textarea> 
suerte!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 14:05.