Php 传递get\u insert\u id的值
你能帮我一下吗。 我试图保存插入的最后一个id,但它继续保存0,我不明白为什么。对不起,这里没有:( 这是我的密码 索引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"/>
<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'];