我有一段代码应该从一个表中获取不是成分的食品名称,然后生成一个查询来创建另一个表,其中的列匹配那些不生成表的项的名称:
function create_table(){
$query = "SELECT * FROM food";
$tablequery = "CREATE TABLE (id int(6) NOT NULL auto_increment,";
if($result=mysql_query($query)){
while($row = mysql_fetch_array($result)){
if($result['ingredient'] != 1){
$tablequery = $tablequery.$result['name']."varchar(30) NOT NULL,";
}
}
$tablequery = $tablequery."PRIMARY KEY (id),UNIQUE id (id),KEY id_2 (id))";
}
mysql_query($tablequery);
}
我确实调用了这个函数,这不是问题所以它只运行了一次但只有id。
答案 0 :(得分:1)
试试这个:
while($row = mysql_fetch_assoc($result)){
if($row['ingredient'] != 1){
$tablequery = $tablequery.$row['name']."varchar(30) NOT NULL,";
}
}
答案 1 :(得分:0)
我认为您需要在代码中添加一行以删除表格(如果已存在):
DROP TABLE IF EXISTS `<your table>`;