Php 传递get\u insert\u id的值

Php 传递get\u insert\u id的值,php,Php,你能帮我一下吗。 我试图保存插入的最后一个id,但它继续保存0,我不明白为什么。对不起,这里没有:( 这是我的密码 索引 <form action="save_member.php" method="POST"> Enter your username: <input type="text" name="member"/> <input type="submit" value="Submit"/>

你能帮我一下吗。 我试图保存插入的最后一个id,但它继续保存0,我不明白为什么。对不起,这里没有:( 这是我的密码

索引

<form action="save_member.php" method="POST">
            Enter your username: <input type="text" name="member"/>
            <input type="submit" value="Submit"/>
        </form>
聊天

    <?php
    session_start();
    echo "hello" . " " . $_SESSION['member_id'];
    echo "<br/>";
    ?>
    <?php
    include 'connect.php';
    $q = mysql_query("select * from messages order by time_sent desc");
    while ($w = mysql_fetch_array($q)) {
        ?>
        <div id="show_messages" style="">
            <span id="wrap_messages" style="">
                <span id="message" style=""><?php echo $w['message']; ?> </span> :
                <span id="member_id" style=""><?php echo $w['member_id']; ?></span>
            </span>
        </div>
    <?php } ?>
    <br/>
    <div style="margin-right: 450px !important; width: 300px; float: right;">
        <form action="sent_chat_message.php" method="POST">
            <input type="hidden" name="member_id"/>
            <input type="text" name="chat"/>
            <input type="submit" value="Submit"/>
        </form>
    </div>

您可能需要添加ID标记,以防浏览器不支持NAME标记 试试这个


输入您的用户名:

您确定插入查询已成功执行吗

因为这一定是您得到
0
作为
mysql\u insert\u id
aster insert查询结果的原因

如果idusers是主键,我建议传递NULL值而不是空字符串

$sql = mysql_query("insert into users (idusers, member) values ('', '$_POST[member]')");
您的查询应该是

$sql = mysql_query("insert into users (idusers, member) values (NULL, '".mysql_real_escape_string($_POST[member])."')");
发件人:

检索上一个查询(通常为INSERT)为自动增量列生成的ID

您的id字段是否设置为自动增量

另外,请使用PDO或mysqli。mysql_*已被弃用。

此线程已解决。 我所做的是

if (isset($_SESSION['last_id']))
    $_SESSION['last_id'] = $_SESSION['last_id'];
else
    $_SESSION['last_id'];

不要使用mysql-*函数,而是使用mysqli或PDOehm在insert in table users中没有错误。问题是我试图从users insert查询传递mysql_insert_id的值,以将其粘贴到messages tableok中的外键。很好。然后确保idusers是主键,因为mysql_insert_id将返回该值如果表没有任何主键,那么您将得到
0
yep我确信idusers是主键,这有什么帮助?还有哪些浏览器不支持
name
属性。确定是否运行了多个db查询?尝试传递链接标识符(返回的是mysql\u connect())作为函数的一个参数。所以mysql\u insert\u id($connection)这个线程被解决了。我所做的是在mysql\u insert\u id中添加一个“isset”。感谢那些回复:)酷!我相信被接受的事情是把它作为一个答案加上,并认为它是正确的。
$sql = mysql_query("insert into users (idusers, member) values ('', '$_POST[member]')");
$sql = mysql_query("insert into users (idusers, member) values (NULL, '".mysql_real_escape_string($_POST[member])."')");
if (isset($_SESSION['last_id']))
    $_SESSION['last_id'] = $_SESSION['last_id'];
else
    $_SESSION['last_id'];