PHP - Campo que no se actualiza

   
Vista:

Campo que no se actualiza

Publicado por Musiker (31 intervenciones) el 18/10/2014 15:45:42
Hola a todos.

Tengo 2 tablas con la siguiente estructura: usuarios (idUsuarios, nombre, password) y posts (idPosts, idUsuarios, post, fecha), pero mi pregunta es por qué el campo "idUsuarios" de la tabla "posts" no se actualiza, siempre es 0. Es decir, el resultado al insertar el contenido en la tabla "posts" es el siguiente:

|idPost----- idUsuario ------- post --------------- fecha ------- |
| 1 ---------- 0 ------------- fsdfsdfs --------- 2014-10-18 |
| 2 ---------- 0 ------------- asdasd --------- 2014-10-18 |


Aquí dejo el código del formulario y de la inserción del contenido.

FORMULARIO.PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
    <head>
        <title></title>
    </head>
 
    <body>
       <form method="POST" action="contenido.php">
            <table>
                <tr>
                    <td>
                    <TEXTAREA COLS=20 ROWS=10 NAME="Texto"></TEXTAREA>
                    </td>
                </tr>
            </table>
            <input type="submit" name="name" value="Publicar" /> <input type="reset" />
        </form>
 
    </body>
</html>



CONTENIDO.PHP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
 
    require("connect_db.php");
 
    if (isset($_REQUEST["Texto"])) {
    $publicacion = $_REQUEST["Texto"];
    } else {
    $publicacion = "Texto";
    }
 
    $clave = mysql_insert_id();
 
            mysql_query("INSERT INTO posts(post,idUsuarios) VALUES('$publicacion', '$clave')") or die(mysql_error());
            $clave = mysql_insert_id();
            mysql_close($link);
            echo "<br><br>Se ha publicado correctamente.";
 
?>


¿Alguna idea? Muchas gracias por adelantado :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
Imágen de perfil de xve

Campo que no se actualiza

Publicado por xve (5516 intervenciones) el 18/10/2014 20:56:35
Hola Musiker, estas intantando guardar en la tabla en el campo idUsuarios la variable $clave que su valor viene dada de la instrucción:
1
$clave = mysql_insert_id();

Esta instrucción devuelve el id del campo auto numérico del último insert realizado en el código, y tu no tienes ningún insert antes de esa linea, no?
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

Campo que no se actualiza

Publicado por Musiker (31 intervenciones) el 18/10/2014 21:32:19
Hola xve, gracias por la respuesta, es cierto, pero he probado y si añado un insert antes de esa linea, me dice que esa variable no está definida. ¿Cómo la puedo definir? He probado definiéndola así
1
2
3
4
5
if (isset($_REQUEST[""])) {
	$clave = mysql_insert_id();
	} else {
	$clave = mysql_insert_id();
	}
pero tampoco resulta
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 xve

Campo que no se actualiza

Publicado por xve (5516 intervenciones) el 19/10/2014 09:33:51
Hola Misiker, esa variable no tendrá valor hasta que se haya realizado el insert!!!

De todas maneras, no se entiende muy bien tu código... el idUsusario, es el mismo id del insert? esto seria mejor indicar que el campo idUsuario es un auto_increment, no?
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