Foros del Web » Programando para Internet » PHP »

Ayuda por favor con el rrelleno de tablas por PHP

Estas en el tema de Ayuda por favor con el rrelleno de tablas por PHP en el foro de PHP en Foros del Web. Hola, por medio de un archivo necesito crear 2 tablas luego llenar con contenido una de ellas. pero al ejecutar el archivo, solo se crean ...
  #1 (permalink)  
Antiguo 20/04/2010, 11:47
 
Fecha de Ingreso: septiembre-2009
Mensajes: 33
Antigüedad: 14 años, 7 meses
Puntos: 1
Ayuda por favor con el rrelleno de tablas por PHP

Hola, por medio de un archivo necesito crear 2 tablas

luego llenar con contenido una de ellas.


pero al ejecutar el archivo, solo se crean las tablas y luego al intentar rellenarlas aparece el siguiwente error:

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 ''


El codigo es:

Código PHP:
// Thanks to Predrag Supurovic from php.net for this function!
function dobatch ($p_query) {
  
$query_split preg_split ("/[;]+/"$p_query);
  foreach (
$query_split as $command_line) {
   
$command_line trim($command_line);
   if (
$command_line != '') {
     
$query_result mysql_query($command_line) or die(mysql_error());
     if (
$query_result == 0) {
       break;
     };
   };
  };
  return 
$query_result;
}

include(
'configuracion.php');
include(
'lib.php');
    
$link opendb();
    global 
$dbsettings;
    
    
$prefix $dbsettings["prefix"];
    
$quest $prefix "_quest";
    
$usquest $prefix "_usquest";
    
    
$page"<html><head><title>Instalando Base de datos - Sistema de Quest relatadas</title></head><body><div class='titulo'>Por favor espere...</div>";
        
$query "CREATE TABLE IF NOT EXISTS `$quest` (";
$query .=  "`id` int(11) NOT NULL,";
$query .=  "`contenido` text NOT NULL,";
$query .=  "`idobjetivo` int(11) NOT NULL,";
$query .=  "`cantidad` int(11) NOT NULL,";
$query .=  "`idobjeto` int(11) NOT NULL COMMENT 'Añadir la ID del Objeto',";
$query .=  "`recompensa1` int(11) NOT NULL,";
$query .=  "`recompensa2` int(11) NOT NULL,";
$query .=  "`iditem` int(11) NOT NULL,";
$query .=  "`latitud` int(11) NOT NULL,";
$query .=  "`longitud` int(11) NOT NULL,";
$query .=  "`contenido2` text NOT NULL COMMENT 'Mensaje al Finalizar la Quest',";
$query .=  "`contenido3` text NOT NULL COMMENT 'Opcional, (Continuar Quest)',";
$query .=  "KEY `id` (`id`)";
$query .= ") ENGINE=MyISAM DEFAULT CHARSET=latin1;";

if (
dobatch($query) == 1) { $page .= "Las tablas del quest fueron creadas.<br />"; } else { $page .= "Error creando las tablas."; }
unset(
$query);

$query "CREATE TABLE IF NOT EXISTS `$usquest` (";
$query .=  "`id` int(11) NOT NULL auto_increment,";
$query .=  "`iduser` int(11) NOT NULL,";
$query .=  "`idquest` int(11) NOT NULL,";
$query .=  "`estado` int(11) NOT NULL,";
$query .=  "`contador` int(11) NOT NULL,";
$query .=  "UNIQUE KEY `id` (`id`)";
$query .=") ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;";


if (
dobatch($query) == 1) { $page .= "Las tablas del usquest fueron creadas.<br />"; } else { $page .= "Error creando las tablas."; }
unset(
$query);

//AQUI ME MANDA EL ERROR

$query "INSERT INTO `$quest` VALUES (1, '<p><img src=\"estilo/imagenes/quest/campesino.jpg\" width=\"128\" height=\"128\" align=\"left\" />Al parecer es cierto, me hab&iacute;an  </p>');";

if (
dobatch($query) == 1) { $page .= "El Volcado se realizo con exito.<br />"; } else { $page .= "Error creando las tablas."; }
unset(
$query);


    
$page .= "<br />La instalación se realizo con exito<br /><br /><div>ES MUY IMPORTANTE QUE BORRES ESTE ARCHIVO ANTES DE CONTINUAR</div></body></html>";
    echo 
$page

Muchas gracias por su ayuda!

Última edición por xMarioHx; 20/04/2010 a las 18:08 Razón: Comentando la linea del error
  #2 (permalink)  
Antiguo 20/04/2010, 11:52
 
Fecha de Ingreso: abril-2010
Mensajes: 2
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda por favor con el rrelleno de tablas por PHP

Para ver que consulta falla prueba a cambiar la linea de do_batch():

Código:
$query_result = mysql_query($command_line) or die(mysql_error());
por:

Código:
$query_result = mysql_query($command_line) or die(mysql_error(). "<br>Sentencia: ".$command_line);
  #3 (permalink)  
Antiguo 20/04/2010, 11:54
 
Fecha de Ingreso: septiembre-2009
Mensajes: 33
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Ayuda por favor con el rrelleno de tablas por PHP

Me marca este error

Código PHP:
SentenciaINSERT INTO `rpg_questVALUES (1, <p><img src="estilo/imagenes/quest/campesino.jpg\" width=\"128\" height=\"128\" align=\"left\" />Al parecer es cierto, me hab&ia 

Le ante puse \" pensando en que podria solucionarse, pero no me dio resultado

Ayuda por favor =(

Última edición por xMarioHx; 20/04/2010 a las 12:00

Etiquetas: favor, tablas
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 09:32.