Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/04/2014, 07:39
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: almacenar consulta en variable php

Cita:
Iniciado por rigo_5834 Ver Mensaje
hola

estimados, tengo el siguiente problema... estoy guardando una cadena de datos que incluyen variables php dentro de otra variable.

Código PHP:

 $link2
=Conectarse($nombre_camp);
 
$tabla_datos=substr(strtolower($nombre_camp."_datos"), 5);
$sql_camp mysql_query("Insert into ".$tabla_datos." ".$insert_query." "$link2); 
$insert_query guarda lo siguiente

Código PHP:

$insert_query
="(telefono) VALUES ('".$row['campo']."') "
en si la variable $row['campo'], en ese momento no tiene nada pero cuando la llamo estoy dentro de un while que tiene la variable $row

Código PHP:
 while($row=mysql_fetch_array($sql_carga))
 {

 .........



el problema es que no me inserta los datos, y cuando hago un print para ver la consulta me arroja la variable $row['campo'], pero no el valor que deberia traerme, cuando lo hago manual funciona bien pero cuando la ejecuto de la variable me muestra eso.

Código:
(telefono) VALUES ('".$row['campo']."')
quizas debo agregarle alguna funcion especial para que tome la variable dentro de la otra variable, como deberia ser y no como texto.

agradecere su ayuda

muchas gracias
Cita:
quizas debo agregarle alguna funcion especial para que tome la variable dentro de la otra variable, como deberia ser y no como texto.
No, lo que tienes es una metida de pata de las grandes. De las notables.

Vamos a este punto:
Cita:
en si la variable $row['campo'], en ese momento no tiene nada pero cuando la llamo estoy dentro de un while que tiene la variable $row
Si ese $row['campo'] no contiene datos en el momento de ejecutar la línea
Código PHP:
Ver original
  1. $sql_camp = mysql_query("Insert into ".$tabla_datos." ".$insert_query." ", $link2);
simplemente no va a almacenar nada, porque estás mandando una cadena vacía.
ten en cuenta que mysql_query() envía a ejecutar la query con lo que tiene en ese momento.

Para que funcionase, como mínimo debería tener una lógica así:
Código PHP:
$link2=Conectarse($nombre_camp);
$tabla_datos=substr(strtolower($nombre_camp."_datos"), 5);
$sql_carga $sql_camp mysql_query("SELECT campo FROM tabla"$link2);
if (
$sql_carga)
{ while(
$row=mysql_fetch_array($sql_carga))
 {
$insert_query="(telefono) VALUES ('".$row['campo']."') ";  
$sql_camp mysql_query("Insert into ".$tabla_datos." ".$insert_query." "$link2);
}

¿Se entiende?
No puedes insertar datos que no existen. Debes haber obtenido los valores de $row['campo'] antes del while.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)