Insert en clave foranea
Publicado por carlos (33 intervenciones) el 11/12/2019 03:20:31
Hola, espero esten bien. Les hago una consulta, estuce haciendo algo y como siempre me atasque en una parte.
tengo 2 tablas; usuarios y articulos. la idea es que el usuario inicie sesión e ingrese articulos, luego se mostrara los articulos de ese usuario en su sesión.
Estos son los campos de las tablas:
Usuarios:
id_uss, tipo: int, not null, clave primaria, auto increment.
nombre, tipo: varchart, not null.
clave, tipo: varchart, not null.
Articulos:
id, tipo int, not null, clave primaria, auto increment.
nombre, tipo: varchart, not null.
idus, tipo: int, not null, index, clave foraneaa id_us de la tabla Usuarios.
Cuando hago el insert me da error al intentar insertar el usuario legeado en la clave foranea.
Les dejo los códigos de las siguientes páginas, para que vean como lo estoy haciendo y me digan que esta mal.
Las páginas son:
login.html, verificar.php, addart.php e insertar.php.
El error esta en insertar.php, puse las otras para que se entienda lo que quiero hacer.
login.html
verificar.php
addart.php
insertar.php
Desde ya gracias a quien pueda darme una mano.
Saludos cordiales.
tengo 2 tablas; usuarios y articulos. la idea es que el usuario inicie sesión e ingrese articulos, luego se mostrara los articulos de ese usuario en su sesión.
Estos son los campos de las tablas:
Usuarios:
id_uss, tipo: int, not null, clave primaria, auto increment.
nombre, tipo: varchart, not null.
clave, tipo: varchart, not null.
Articulos:
id, tipo int, not null, clave primaria, auto increment.
nombre, tipo: varchart, not null.
idus, tipo: int, not null, index, clave foraneaa id_us de la tabla Usuarios.
Cuando hago el insert me da error al intentar insertar el usuario legeado en la clave foranea.
Les dejo los códigos de las siguientes páginas, para que vean como lo estoy haciendo y me digan que esta mal.
Las páginas son:
login.html, verificar.php, addart.php e insertar.php.
El error esta en insertar.php, puse las otras para que se entienda lo que quiero hacer.
login.html
1
2
3
4
5
6
7
8
<form action="verificar.php" method="post">
<br>
<input type="text" name="usuario">
<br>
<input type="password" name="contra">
<br>
<input type="submit" value="Entrar">
</form>
verificar.php
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
<?php
session_start();
if(isset($_REQUEST['usuario'],$_REQUEST['contra'])) {
$_SESSION['n1'] = $_REQUEST['usuario'];
$_SESSION['n2'] = $_REQUEST['contra'];
}
else {
?>
<h2>Acceso denegado</h2>
<p>Acceso solo a usuarios registrados.</p>
<?php
}
$conexion = mysqli_connect("localhost","miuser","mipass","mibase");
$dato = $_REQUEST['usuario'];
$codSeguro = mysqli_real_escape_string($conexion,$dato);
$dato2 = $_REQUEST['contra'];
$cod2 = mysqli_real_escape_string($conexion,$dato2);
$registros=mysqli_query($conexion,"SELECT nombre,clave FROM usuarios where nombre='$codSeguro' && clave='$cod2'") or
die("Problemas en el select:".mysqli_error($conexion));
if ($reg=mysqli_fetch_array($registros))
{
header("Location:addart.php");
}
else
{
header("Location:login.html");
}
mysqli_close($conexion);
?>
addart.php
1
2
3
4
5
6
<form action="insertar.php" method="post">
<br>
<input type="text" name="arti">
<br>
<input type="submit" value="Agregar">
</form>
insertar.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
session_start();
if(!isset($_SESSION['n1'])) {
?>
<h2>Acceso denegado</h2>
<p>El contenido de esta sección solo está disponible para usuarios registrados.</p>
<?php
}
else {
$conexion = mysqli_connect("localhost","miuser","micontra","mibase");
$art = $_REQUEST['arti'];
$artSeguro = mysqli_real_escape_string($conexion,$art);
$consulta = mysqli_query($conexion,"INSERT INTO articulos (nombre,idus) VALUES('$artSeguro','$_SESSION['n1']')");
mysqli_close($conexion);
}
?>
Desde ya gracias a quien pueda darme una mano.
Saludos cordiales.
Valora esta pregunta


0