PHP - No se crea la tabla

 
Vista:
Imágen de perfil de Jacinto

No se crea la tabla

Publicado por Jacinto (40 intervenciones) el 20/12/2013 10:53:11
Buenas.
No se el que pero debo de estar haciendo algo mal, ya que no se crea la tabla en la bbdd
lo hago así.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
include("../conexion.php");
 
 
        $sql="CREATE TABLE comentarios (
		`id` int(6) NOT NULL auto_increment, 
		`sec_aux_id_sec` INT `nombre` varchar(25) NOT NULL, 
		`email` varchar(50) NOT NULL, 
		`fecha` varchar(25) NOT NULL, 
		`comentario` varchar(200) NOT NULL, 
		PRIMARY KEY (`id`), CONSTRAINT `fk_sec_aux_id_sec` 
		FOREIGN KEY (`sec_aux_id_sec`) REFERENCES `goldbexdb`.`sec_aux` (`id_sec`) 
		ON DELETE CASCADE ON UPDATE NO ACTION) 
		ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
                )";
 
             $crear_tabla=mysql_query($sql,$conexion);
             if(!$crear_tabla){
                 echo 'Error al crear la table en la base de datos';
                 }else{
                     echo 'La tabla se creo correctamente';
 
            // si la tabla se creo correctamente entonces insertarmos los datos 
				 }
 
 
?>
Yo lo que hago, es que tengo un formulario (que debo de cambiar por algo un poco mejor como FCKeditor) , pero la bbdd no se crea.
Que puede ser?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

No se crea la tabla

Publicado por xve (6935 intervenciones) el 20/12/2013 13:13:08
Hola Jacinto, no puedo probar tu código, ya que no disponemos de la tabla sec_aux... nos puedes mostrar la estructura de la misma para poder probarlo?

Entiendo que la base de datos se llama goldbexdb, y que haces referencia a la tabla sec_aux y a su campo id_sec?

Es correcto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jacinto

No se crea la tabla

Publicado por Jacinto (40 intervenciones) el 26/12/2013 13:13:22
Buenas.
Respecto a esto:
Entiendo que la base de datos se llama goldbexdb, y que haces referencia a la tabla sec_aux y a su campo id_sec?
Comentar que no entiendo por que cambie el nombre de la bbdd que es delia por goldbexdb.
Este el php completo
php para insertar
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<div id="cont-busqueda2">
           	<form action="insertar-pagina2.php" method="post" name="form2" id="form2">
                <input type="text" name="titulo" id="titulo" title="El titulo solo debe estar formado solo por letras." maxlength="30" placeholder="NOMBRE" autocomplete="on" required  pattern="|^[a-zA-Z ñÑáéíóúüç]*$|" style="color: rgb(180, 177, 175);" />
 				<input type="text" name="link" id="link" title="El link solo debe estar formado solo por letras." maxlength="30" placeholder="LINK" autocomplete="on" required  pattern="|^[a-zA-Z ñÑáéíóúüç]*$|" style="color: rgb(180, 177, 175);" />
              <!---esta es la parte donde se instala fckeditor----------->
                <?php
                $sBasePath = '../includes/fckeditor/'; //ruta
                $oFCKeditor = new FCKeditor('texto');
                $oFCKeditor->BasePath = $sBasePath;
                $oFCKeditor->ToolBarset = 'Basic';
                $oFCKeditor->Width='900';
                $oFCKeditor->Height='500';
                $oFCKeditor->Value = '';
                $oFCKeditor->Create();
            ?>
  <!---------final de instalación------>
         <input type="submit" value="Enviar información " /></td>
        </form>
php que lo recoje
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
include("../conexion.php");
		$titulo =mysql_real_escape_string($_POST["titulo"]);
		$link=mysql_real_escape_string($_POST["link"]);
		$texto=mysql_real_escape_string($_POST["texto"]);
		$texto = nl2br($_POST["texto"]);
 
	mysql_query("INSERT INTO sec_aux (Cont_titulo,link,Cont_texto,Cont_image) VALUES ('{$titulo}','{$link}','{$texto}','{$archivo}')",$conexion);
	if (mysql_errno($conexion))
		{
			echo "No se pudo insertar los datos en la tabla. Error" .mysql_errno() ." - ".mysql_error();
			mysql_close($conexion);
		}	else{
			$sql="CREATE TABLE comentarios (
		`id` int(6) NOT NULL auto_increment, 
		`sec_aux_id_sec` INT, `nombre` varchar(25) NOT NULL, 
		`email` varchar(50) NOT NULL, 
		`fecha` varchar(25) NOT NULL, 
		`comentario` varchar(200) NOT NULL, 
		PRIMARY KEY (`id`), CONSTRAINT `fk_sec_aux_id_sec` 
		FOREIGN KEY (`sec_aux_id_sec`) REFERENCES `delia`.`sec_aux` (`id_sec`) 
		ON DELETE CASCADE ON UPDATE NO ACTION) 
		ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
                )";
 
             $crear_tabla=mysql_query($sql,$conexion);
             if(!$crear_tabla){
                 echo 'Error al crear la table en la base de datos';
                 }else{
                     echo 'La tabla se creo correctamente';
 
            // si la tabla se creo correctamente entonces insertarmos los datos 
		}
			$conexion;
			header("location:ver-pagina.php");
			}
?>
Esta es la estructura de la tabla sec_id
1 id_sec int(11) UNSIGNED ZEROFILL No Ninguna AUTO_INCREMENT
2 Cont_texto text utf8_general_ci No Ninguna
3 Cont_image varchar(60) utf8_general_ci No Ninguna
4 Cont_titulo varchar(100) utf8_general_ci No Ninguna
5 link varchar(30) utf8mb4_general_ci No Ninguna

Información
Espacio utilizadoDatos 16 KB
Índice 0 B
Total 16 KB
Estadísticas de la filaFormato Compact
Cotejamiento utf8_general_ci

Espero que con esto quedara más claro.
La información se inserta correctamente. Pero la tabla en la que se tiene que almacenar la nueva zona de comentarios no se crea.
Un saludo y gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

No se crea la tabla

Publicado por Elier (92 intervenciones) el 23/12/2013 15:04:15
Falta una coma despues de INT y antes de 'nombre'

arreglalo y ponlo así: `sec_aux_id_sec` INT, `nombre` varchar(25) NOT NULL,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jacinto

No se crea la tabla

Publicado por Jacinto (40 intervenciones) el 26/12/2013 13:05:53
Muchas gracias por la observación ya lo cambie.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar