Ver Mensaje Individual
  #12 (permalink)  
Antiguo 05/09/2006, 04:38
Avatar de Javiglez
Javiglez
 
Fecha de Ingreso: marzo-2006
Ubicación: Valladolid
Mensajes: 496
Antigüedad: 18 años, 1 mes
Puntos: 0
esq a ver vamos a ir por partes y vamos a veer si me explico, yo quiero q me funcione como yo lo tengo no creando en plan chapucero con el PHPmyadmin las tablas, entonces os enseño la clase donde creo la base de datos que es un PHP con chivatos y que ahi de las 4 tablas solo me crea 2 y no me crea el registro por defecto en la tabla administradores...ya empezamos mal porque funcionaba perfecto en localhost...Aqui os pongo el codigo
Código PHP:
define("RUTA","UPLOAD/");
$basedatos = "nogues";
$servidor= "localhost";
$usuario= "root";
$pasword= "";
$ruta= "Upload/";

//conexion  con el servidor
$link = @mysql_connect($servidor, $usuario, $pasword);
 
// comprobacion de conexion
if (! $link){
?>
echo "<h2 align='center'>ERROR: Imposible establecer conexión con el servidor</h2>";
<?php
exit;
}
// lista bases de datos 
$db mysql_list_dbs();
$num_bd mysql_num_rows($db);
//base de datos existente 
$existe "NO" ;
for (
$i=0$i<$num_bd$i++) {
if (
mysql_dbname($db$i) == $basedatos) {
$existe "SI" ;
mysql_drop_db($basedatos$link);
 

?>
<h2 class="Estilo2">LA BASE DE DATOS <?php echo" $basedatos" ?> ha sido eliminada.</h2>
<?php
$existe 
"NO" ;
}
}
if (
$existe == "NO") {
 
if (! 
mysql_create_db($basedatos$link)) {
?>
<h2 class="Estilo2">ERROR 1: Imposible crear base de datos</h2>
<?php
exit;

else {
?>
 <h2 class="Estilo2">LA BASE DE DATOS <?php echo" $basedatos" ?> HA SIDO CREADA CORRECTAMENTE.</h2>
<?php
}
}
?>
<br>
<?php
mkdir
(RUTA0777); //Carpeta donde guardo los documentos de los expedientes con los permisos necesarios
$sql "CREATE TABLE Clientes ( 
dni VARCHAR (9) NOT NULL,
nombre VARCHAR (100) NOT NULL,
apellido1 VARCHAR (100) NOT NULL,
apellido2 VARCHAR (100) NOT NULL,
direccion VARCHAR (200) NOT NULL,
telefono INT (9) NOT NULL,
mail VARCHAR (50) NOT NULL,
login VARCHAR (100) NOT NULL,
pass  VARCHAR (100) NOT NULL,
pass2  VARCHAR (100) NOT NULL,
PRIMARY KEY (dni)
) TYPE = INNODB;"


if (@
mysql_db_query($basedatos,$sql,$link)) {
?>
<h2 class="Estilo2">La tabla Clientes se ha creado con éxito</h2>
<?php
} else {
?>
<h2 class="Estilo2">No se ha podido crear la tabla Clientes</h2>
<?php
}

//--------------------------------------------------------------------------------
$sql "CREATE TABLE Expedientes (
expediente INT (20) NOT NULL AUTO_INCREMENT,
nombre VARCHAR (50) NOT NULL,
fecha VARCHAR (20) NOT NULL,
direccion VARCHAR (200) NOT NULL,
dni VARCHAR (9) NOT NULL,
PRIMARY KEY (expediente),
FOREIGN KEY (dni) REFERENCES Clientes(dni) 
) TYPE = INNODB;"
;
      
    
if (@
mysql_db_query($basedatos,$sql,$link)) {
?>
<h2 class="Estilo2">La tabla Expedientes se ha creado con éxito</h2>
<?php
} else {
echo 
"<h2 align='center'>No se ha podido crear la tabla Expediente</h2>";
}

//----------------------------------------------------------------------------------------
$sql "CREATE TABLE Documentos(
id_documento VARCHAR (40) NOT NULL,
tipo VARCHAR (20) NOT NULL,
nombre VARCHAR (50) NOT NULL,
expediente VARCHAR (20) NOT NULL,
comentario VARCHAR (300),
PRIMARY KEY (id_documento),
FOREIGN KEY (expediente) REFERENCES Expedientes(expediente) 
) TYPE = INNODB;"
;
if (@
mysql_db_query($basedatos,$sql,$link)) {
?>
<h2 class="Estilo2">La tabla Documentos se ha creado con éxito</h2>
<?php
} else {
echo 
"<h2 align='center'>No se ha podido crear la tabla Documentos</h2>";
}  
    
//-----------------------------------------------------------------------------------------
        
   
$sql "CREATE TABLE Admin(
login VARCHAR (50) NOT NULL,
pass VARCHAR (50) NOT NULL,
pass2 VARCHAR (50) NOT NULL,
mail VARCHAR (100) NOT NULL,
PRIMARY KEY (login)
) TYPE = INNODB;"
;
if (@
mysql_db_query($basedatos,$sql,$link)) {
?>
<h2 class="Estilo2">La tabla Admin se ha creado con éxito</h2>
<?php
} else {
?>
<h2 class="Estilo2">No se ha podido crear la tabla Admin</h2>
<?php
}
     
 
//administrador por defecto
  
$sql "INSERT INTO admin (login,pass,pass2,mail)
 VALUES ("

$sql .= "'nogues'"
$sql .= ",'nogues'"
$sql .= ",'nogues'";
$sql .= ",'[email protected]'"
$sql .= ")"
mysql_query($sql);  
 

?>
Solo me crea la tabla Clienes y Admin las otras dos no y no introduce adminsitrador nogues que pongo al final de defecto...

Lo unico que se me ocurre es que sea porque las tabla Expedientes y Documentos tienen claves foraneas referenciadas y las otras no pero no me funcionaria en localhost y funciona perfectamente...aver si veis algo hay...Gracias