Foros del Web » Programando para Internet » PHP »

ayuda con foreach

Estas en el tema de ayuda con foreach en el foro de PHP en Foros del Web. Hola amigos de foros del web. Miren el problema que tengo: Código PHP:      foreach( $arrayCF  as  $j )     {         echo  $j ;          mysql_query ...
  #1 (permalink)  
Antiguo 23/10/2010, 17:11
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
ayuda con foreach

Hola amigos de foros del web.

Miren el problema que tengo:

Código PHP:
    foreach($arrayCF as $j)
    {
        echo 
$j;
        
mysql_query("INSERT INTO codigo SET codigo = '$j' ");
    } 
Tengo ese codigo es imprimir informacion de una tabla de mi base de datos, hasta ese punto todo va bien, pero al momento de ingresarlo a otra tabla, no aparece nada.

No se que este mal ya que el codigo si imprime los registros pero no los ingresa, la tabla y el campo es correcto.

Que podria ser?
  #2 (permalink)  
Antiguo 23/10/2010, 17:14
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: ayuda con foreach

Es q esta mal la sentencia SQL... Debería ser:

Código MySQL:
Ver original
  1. INSERT INTO codigo ('campo') VALUES ('$j')

Chequea bien si lo que querés es insertar un campo o actualizar uno que ya existe...
__________________
HV Studio
Diseño y desarrollo web
  #3 (permalink)  
Antiguo 23/10/2010, 17:21
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: ayuda con foreach

Cita:
Iniciado por jackson666 Ver Mensaje
Es q esta mal la sentencia SQL... Debería ser:

Código MySQL:
Ver original
  1. INSERT INTO codigo ('campo') VALUES ('$j')

Chequea bien si lo que querés es insertar un campo o actualizar uno que ya existe...
Gracias por responder, pero sigue sin funcionar, mira este es el codigo completo:

Código PHP:
<?php
set_time_limit
(0);
////////////////////////////////////////////////////////////////////////////////////////////////

mysql_connect("localhost""root" ,"");
mysql_select_db("programasIndexados");

////////////////////////////////////////////////////////////////////////////////////////////////

$arrayCF = array();
$var3 "/categoria/";
$i 0;

////////////////////////////////////////////////////////////////////////////////////////////////

$sql mysql_query("SELECT * FROM programas WHERE enlaces LIKE '%$var3%'");

////////////////////////////////////////////////////////////////////////////////////////////////

    
while($row mysql_fetch_assoc($sql))
    {
        
$url $row['enlaces'];
        
$lines file($url);
        
$salida='';
            foreach (
$lines as $line_num => $line)
            {
              
$salida.=nl2br(htmlspecialchars($line));
            }

        
$arrayCF[$i] = $salida;
        
$i $i++;
    }

////////////////////////////////////////////////////////////////////////////////////////////////

    
foreach($arrayCF as $j)
    {
        
mysql_query("INSERT INTO codigo ('campo') VALUES ('$j')");
        echo 
$j;
    }

////////////////////////////////////////////////////////////////////////////////////////////////


?>
Lo que hace es sacar el codigo fuente de enlaces en mi base de datos, imprimirlo y guardarlo en una tabla.

Hace todo menos guararlo y no se que hacer!
  #4 (permalink)  
Antiguo 23/10/2010, 17:32
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: ayuda con foreach

depura tus consultar
Código PHP:
Ver original
  1. mysql_query("INSERT INTO codigo ('campo') VALUES ('$j')") or die (mysql_error());
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 23/10/2010, 17:34
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: ayuda con foreach

Hola
has intentado hacer echo del query (dentro del foreach) para ver exactamente que intenta insertar, y copiar esos echos y pegarlos en phpmyadmin para ver si logra insertar aunque sea manualmente?
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #6 (permalink)  
Antiguo 23/10/2010, 17:44
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: ayuda con foreach

Cita:
Iniciado por Hidek1 Ver Mensaje
depura tus consultar
Código PHP:
Ver original
  1. mysql_query("INSERT INTO codigo ('campo') VALUES ('$j')") or die (mysql_error());
Gracias por contestar, esto es lo que me da:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''campo') VALUES ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio' at line 1

Cita:
Iniciado por mortiprogramador Ver Mensaje
Hola
has intentado hacer echo del query (dentro del foreach) para ver exactamente que intenta insertar, y copiar esos echos y pegarlos en phpmyadmin para ver si logra insertar aunque sea manualmente?
saludos
Gracias por contestar ,si asi si funciona bien pero lo quiero hacer todo dinamico.
  #7 (permalink)  
Antiguo 23/10/2010, 17:46
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: ayuda con foreach

Cita:
Iniciado por proxipor Ver Mensaje
Gracias por contestar, esto es lo que me da:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''campo') VALUES ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio' at line 1



Gracias por contestar ,si asi si funciona bien pero lo quiero hacer todo dinamico.
bueno, ya tienes el error, seguramente es el uso de las comillas o de caracteres especiales
revisa las funciones de cadena para evitar esos inconvenientes,
tanto de php como de mysql
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #8 (permalink)  
Antiguo 23/10/2010, 17:51
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: ayuda con foreach

Cita:
Iniciado por proxipor Ver Mensaje
Gracias por contestar, esto es lo que me da:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''campo') VALUES ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio' at line 1



Gracias por contestar ,si asi si funciona bien pero lo quiero hacer todo dinamico.
tu error en este caso es que al campo de la base de datos lo colocaste entre comillas simple lo que para mysql lo hace ser un string y no un campo quitale las comillas y veras que funcionara saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #9 (permalink)  
Antiguo 23/10/2010, 17:53
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: ayuda con foreach

Cita:
Iniciado por mortiprogramador Ver Mensaje
bueno, ya tienes el error, seguramente es el uso de las comillas o de caracteres especiales
revisa las funciones de cadena para evitar esos inconvenientes,
tanto de php como de mysql
saludos
Si es eso, por que si pongo esta funcion:

Código PHP:
    mysql_query("INSERT INTO codigo (campo) VALUES ('$j')") or die (mysql_error()); 
ya no me da el error del campo, pero me da uno nuevo:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'stylesheet' id='css' href='http://www.fulldownload.com.mx/' at line 1

que es lo que tengo que hacer?
  #10 (permalink)  
Antiguo 23/10/2010, 17:57
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: ayuda con foreach

ya resolvi el problema con el siguiente codigo:

$j = mysql_real_escape_string($j);

solo que cambia demasiado el codigo fuente de la pagina :S

existira alguna forma de meter los datos tal cual?

Gracias a todos!

Última edición por proxipor; 23/10/2010 a las 18:10
  #11 (permalink)  
Antiguo 23/10/2010, 18:48
Avatar de MaRcElTeLlA  
Fecha de Ingreso: mayo-2010
Ubicación: Martorell
Mensajes: 66
Antigüedad: 14 años
Puntos: 5
Respuesta: ayuda con foreach

Que le pasaba exactamente?
  #12 (permalink)  
Antiguo 23/10/2010, 18:51
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: ayuda con foreach

Cita:
Iniciado por MaRcElTeLlA Ver Mensaje
Que le pasaba exactamente?
Hola, gracias por tu atencion, pero ahora si ya repare el problema con str_replace, cambie todas las comillas simples por dobles.

Saludos y gracias a todos!

Etiquetas: foreach
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 07:55.