Foros del Web » Programando para Internet » PHP »

¿MYSQL que es resuerse 3 id?

Estas en el tema de ¿MYSQL que es resuerse 3 id? en el foro de PHP en Foros del Web. Buenas queridos amig@s, hoy me perturba esto: este es mi codigo, lo que quiero hacer es que seleccione un campo de una tabla y hacer ...
  #1 (permalink)  
Antiguo 07/10/2004, 12:21
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 21 años
Puntos: 24
¿MYSQL que es resuerse 3 id?

Buenas queridos amig@s, hoy me perturba esto:
este es mi codigo, lo que quiero hacer es que seleccione un campo de una tabla y hacer ciertas operaciones con las funciones explode e implode, pero al parecer se em presenta un error en la consulta, o por lo menos me devuelve un valor extraño: RESOURCE ID 3.
UDS me pueden ayudar??

Código PHP:
$base="ios";
$tabla="tienda";
$conexion=mysql_connect("localhost","root",""); 
mysql_select_db($base,$conexion);
$codmysql_query("SELECT nombre,formato FROM $tabla WHERE (nombre = '$formato') ",$conexion)
  or die (
"Invalid query");

while (
$registro mysql_fetch_row($cod)){ 
foreach (
$registro  as $clave){
if (
$i == 1){
$cod $clave;
$i++;          
}
else 
$i++;
}
 }

$trozo4=explode(">>producto<<",$cod);

$fin implode(" pi ",$trozo4);
echo (
$fin);
mysql_close(); 
__________________
SEO en Medellin
  #2 (permalink)  
Antiguo 07/10/2004, 12:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si quieres usar el foreach() .. deberías usar:

foreach ($registro as $clave=>$valor){

para obtener un par tipo:

$registro['nombre_campo'] = valor .. que sería como tendrías que acceder a cada campo del registro en curso que estás leyendo de tu record-set (consulta ejecutada).

Si quieres probar usa:

Código PHP:
echo "<pre>";
print_r($registro);
echo 
"</pre>"
Para ver que estructura y datos tiene tu array.

Los "resource ID" son los "links" de conexión a tu BD .. se numeran según tengas activos y normalmente eso es lo que obtendrías si haces un echo a $conexion (si mal no recuerdo y no me equivoco).

Un saludo,
  #3 (permalink)  
Antiguo 07/10/2004, 13:02
 
Fecha de Ingreso: septiembre-2004
Ubicación: Puebla, México
Mensajes: 81
Antigüedad: 19 años, 6 meses
Puntos: 0
Dentro del foreach() estas modificando la variable $cod que es la variable que te regreso tu consulta con mysql_query. Asi, cuando hay otra vuelta del ciclo while $cod ya no tiene lo mismo y creo que esa es la causa del error.

saludos
__________________
Revista DdS
Revista on-line sobre desarrollo de software
  #4 (permalink)  
Antiguo 07/10/2004, 18:25
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 21 años
Puntos: 24
No entendi muy bien

bueno gracias por sus respuestas, pero no entendi muy bien....
no es lo que satchb decia... y además no entinedo muy bien lo que dice CLUSTER... como tendria que modificar el código para que funcione.... os i hay una mejor manera...

HASTA PRONTO, y muchas gracias
__________________
SEO en Medellin
  #5 (permalink)  
Antiguo 08/10/2004, 06:32
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No sabemos que datos guardas en tus campos "nombre y formato" .. para que tengas que aplicar un "explode" .. pero en principio ya que haces esa consulta SQL a esos dos campos .. eso es lo único que vas a obtener y fijo:
Código PHP:
while ($registro mysql_fetch_row($cod)){ 
   echo 
$registro['nombre'];
   echo 
$registro['formato'];

A partir de ahí no sé que harás con tu "nombre" o "formato" lo que necesites .. Pero, si no explicas que datos gestionas no podremos ver como los deberías trabajar .. El caso es que ese:

$trozo4=explode(">>producto<<",$cod);

(ahora que me fijo bien ..) no es correcto siendo $cod: $cod= mysql_query("SELECT nombre,formato FROM $tabla WHERE (nombre = '$formato') ",$conexion)
or die ("Invalid query");

En tal caso, deberías aplicar ese explode() a $registro['nombre'] o $registro['formato'] ...

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 01:32.