PDA

Ver la Versión Completa : una misma B.d dos tablas , mismo nombre de campo


kassel
27-01-2004, 21:08:35
ola tengo una base de datos .
con dos tablas
nombre------campo
usuarios-----nombre
urbanizaciones---nombre
como vereis tienen el mismo nombre los dos campos y a la hora de mostrar los dos campos en un fetch_array se monta un pifostio que noi te veas
Cita:
$result = mysql_query("SELECT * FROM usuarios ",$link);
while ($myrow = mysql_fetch_array($result)) {
echo $myrow["nombre"]." - ".$myrow["apellidos"]." - ".$myrow["mail"]."-".$myrow['nombre'];

como lo hago para que no ocurra u se muestre cada registro solo una vez?????

roman
27-01-2004, 21:29:04
Exactamente ¿cuál es el error?

La consulta sólo hace referencia a una tabla de manera que la otra no afecta en nada ni mucho menos los nombres de sus campos.

¿Cómo está eso de " a la hora de mostrar los dos campos"? ¡Sólo usas una tabla en el SELECT!

// Saludos

kayetano
28-01-2004, 01:03:13
Hola

En el caso de que tengas dos tablas con campos con el mismo nombre, puedes crear alias en la consulta, un ejemplo:

SELECT us.nombre AS nombre_usuario, ur.nombre AS nombre_urbanizacion
FROM usuarios us, urbanizaciones ur
WHERE .....

Ahora para hacer referencia al campo nombre de la tabla usuario utilizaremos "nombre_usuario" y con el otro campo pues lo mismo.

Espero que tu duda fuese encaminada en esta direccion.

kassel
28-01-2004, 16:40:49
ola consegui hacer la lectura de las dos bases de datos pero ahora no se como guardar lo datos en la base y que contengan ambas tablas la misma id, pon el code :
Código:
<?php
if(!isset($_SESSION['login']))
{
require('sesion.php');
}
?>

<html>
<body>

<?php

include('conex.php');
mysql_select_db("seres_clientes",$link);
extract($_POST,EXTR_SKIP);
extract($_GET,EXTR_SKIP);



//Comprobamos si hemos recibido datos del formulario (enviar)




if ($enviar) {
// Si recibimos un id, modificamos, sino añadimos un registro
if ($id_cliente) {
$sql = "UPDATE usuarios SET nombre='$nombre', apellidos='$apellidos',
mail='$mail' WHERE id_cliente=$id_cliente";

echo "Registro Actualizado<p>";
//variable de get

} else {
$data = date('Y-m-d');

$sql = "INSERT INTO usuarios ,urbanizaciones(nombre, apellidos, mail,fecha_alta,nombre) VALUES ".
"('$nombre', '$apellidos', '$mail','$data','$urnom') ";
$result = mysql_query($sql) or die ( mysql_error() );
echo "Registro Añadido<p>";
}
// Enviamos la sentencia SQL al servidor DB
$result = mysql_query($sql);
} elseif ($delete) {
// Borramos un registro
$sql = "DELETE FROM usuarios WHERE id_cliente=$id_cliente";
$result = mysql_query($sql);
echo "Registro Borrado<p>";
} else {
// Esta parte se ejecuta si no hemos presionado el boton enviar,
// es decir no venimos de un formulario
if (!$id_cliente) {
// Mostramos todos los registros de nuestra BD
$result = mysql_query("SELECT usuarios.nombre as usnom,
urbanizaciones.nombre as ubnom, apellidos, mail,id_cliente
FROM urbanizaciones
INNER JOIN usuarios ON urbanizaciones.id_urbanizacion= usuarios.id_cliente",$link);

while ($myrow = mysql_fetch_array($result)) {
echo $myrow["usnom"]." - ".$myrow["apellidos"]." - ".$myrow["mail"]."-".$myrow['ubnom'];
echo "<a href=\"$PHP_SELF?id_cliente=".$myrow["id_cliente"]."&delete=yes\"> ------ Borrar - </a>";
echo "<a href=\"$PHP_SELF?id_cliente=".$myrow["id_cliente"]."\">ó Modificar </a><br>";
}

}


?>

<P>

<P>
<form method="post" action="<?php echo $PHP_SELF?>">
<input type="Submit" name="an" value="Formulario: Nuevo Regisro">


<?php


if ($id_cliente ) {
// editamos el registro seleccionado
$sql = "SELECT * FROM usuarios WHERE id_cliente=$id_cliente";
$result = mysql_query($sql) or die(mysql_error());
$myrow = mysql_fetch_array($result);
$id_cliente = $myrow["id_cliente"];

$nombre = $myrow["nombre"];
$apellidos= $myrow["apellidos"];
$telefono = $myrow["telefono"];
$mail = $myrow["mail"];

// enviamos el id para poder editar el registro
echo "id : <input type=text size=10 name=\"id_cliente\" value=$id_cliente><br>";



?>

Nombre : <input type="Text" size="50" name="nombre" id="nombre" value="<?php echo $nombre ?>"><br>
Apellidos : <input type="Text" size="100" name="apellidos" value="<?php echo $apellidos ?>"><br>
Email : <input type="Text" size="150" name="mail" value="<?php echo $mail ?>"><br>

<input type="Submit" name="enviar" value="Enviar Información">
</form>
<form method="post" action="<?php echo $PHP_SELF?>">

<?php
}

if($an){
echo "<br><br><br><br>";


echo " Nombre : <input type=\"Text\" size=\"50\" name=\"nombre\" id=\"nombre\" value= $nombre ><br>";
echo "Apellidos : <input type=\"Text\" size=\"100\" name=\"apellidos\" value= $apellidos ><br>";
echo "Email : <input type=\"Text\" size=\"150\" name=\"mail\" value= $mail ><br>";
echo" Loggin :<input type=\"text\" size=\"8\" name=\"login\" value=>";
echo" Password :<input type=\"text\" size=\"8\" name=\"password\" value=$password>";

echo" Urbanizacion :<input type=\"text\" size=\"150\" name=\"urnom\" value=$nombre>";

echo "<input type=Submit name=\"enviar\" value=\"Enviar Información\">";

echo "<input type=Submit value=\"quitar Formulario\"><br><br>";

}// End If if ($enviar)
}
?>
</form>


</body>
</html>

esto es cada vez mas ccomplejo pero ya estoy cerca de llegar al final.

ola

Emilio
28-01-2004, 23:01:54
Hola

¿has probado con dos INSERT?

kassel
29-01-2004, 03:33:13
si supiera como lo he intentado pero no me funciona y como desconocco bastante de php , no se como seguir.

ola :D

Emilio
29-01-2004, 22:59:20
Hola,

Esto no tiene mucho que ver con PHP, mas bien es tema de SQL. Por ahí tienes el siguiente código...

mysql_query("SELECT usuarios.nombre as usnom,
urbanizaciones.nombre as ubnom, apellidos, mail,id_cliente
FROM urbanizaciones
INNER JOIN usuarios ON urbanizaciones.id_urbanizacion= usuarios.id_cliente",$link);


Por lo tanto estás pillando datos de la tabla usuarios y de la tabla urbanizaciones, pues lo actualizas con....


$sql1 ="INSERT INTO usuarios (Lista de campos) VALUES (Lista de valores)";
$sql2 ="INSERT INTO urbanizaciones (Lista de campos) VALUES (Lista de valores)";
mysql_query( $sql1 );
mysql_query( $sql2 );

eliam
02-02-2004, 22:52:43
Kassel, me parece interesante el código que mandastes..

Podrías decirme la estructura.
Y tambien el archivo donde tienes el include.
Gracias

kassel
05-02-2004, 19:17:48
ola elian me parece no haber entendido bien lo que me pides ¿la estructura ?
lo que si te puedo decir es que lo que hay en el include es un sistema de busqueda de la base de datos por nombre , apellidos e urbanizacion.


ola :D