[英]how to store the value in a variable retrieved from mysql table and to use it in another query using php
[英]How to use results of a mysql query - eg store in another table
我从数据库查询mysql以返回我想稍后使用的字段。
我可以让查询运行,我可以使用echo从字段打印数据,以证明结果符合预期。 我已经尝试了各种脚本来将结果字段存储为变量,但到目前为止还没有成功。
谁能帮助。
这是查询脚本 -
$query = mysql_query("SELECT ID FROM users WHERE username = ".$_SESSION['user']);
while($row = mysql_fetch_object($query) )
{
echo "$row->ID<br />";
我现在需要将ID存储为变量以进行测试,并可能存储在具有其他数据的另一个表中。
我不是一个程序员,我正在尝试完成一个由其他人创建的家庭项目。
谢谢。
编辑1
我一直在尝试将数据存入临时数据库并遇到问题。
如果我将其输入phpMyadmin它可以工作
INSERT INTO tempusertrip (username,ID) SELECT username,ID FROM users WHERE ID=1
但是,如果我将它添加到我的PHP脚本,它不会,并且日志文件中没有错误。 我这样添加它
$query1 = ("INSERT INTO temp2 (username,ID) SELECT username,ID FROM users WHERE ID=1");
我的脚本显然有问题,但我似乎无法弄清楚它是什么。
理想情况下,我需要输入数据,其中条件基于先前会话集中包含的用户名($ _SESSION ['user']),而不是使用'where ID = 1'。
任何指导将不胜感激。
首先,您需要为数据创建一个表。 它可以是只有您的连接可以看到的临时表,也可以是常规表(如果其他连接需要数据)。 您需要从源(如果不是全部)确定所需的列以及您正在执行的操作(如果有)可能需要的额外列。 通常,您只需要新表中原始表中的主键。 对于MySQL,如果新表与旧表相同,请使用CREATE ... LIKE old_tbl_name
语法进行向前兼容。
接下来(这可能是您首先要查找的内容),您将从旧表的选择中插入到新表中:
INSERT INTO new_tbl_name SELECT ... FROM old_tbl_name WHERE ...
如果您有额外的列,则需要指定要复制的列:
INSERT INTO selected_users (username) SELECT username FROM users WHERE ...
(列不需要命名相同,但为什么要麻烦。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.