【发布时间】:2011-11-09 21:42:06
【问题描述】:
我仍在学习 PHP 和 MYSQL,并尝试制作一个程序来列出数据库中的所有表和数据(已完成),编辑选定的行(已完成),现在在选定的表上添加新记录。现在问题在于可变数量的字段。表可以有 3 个字段,也可以是 4 个,依此类推。在我的代码中 $getValue 是一个数组。我打印出来只是为了测试。它可能看起来像“Array ([name] => Tomas [lastName] => Timas)”或“Array ([stufName] => Phone [stufPrice] => 58 [cmets] => My new phone)” $getTable 返回要插入的表的名称。 这必须是表上的新记录,因此 stufID 或 nameID 或任何 ID 都将为 NULL 如果不知道值的个数,如何使用“INSERT INTO table VALUES (value1, value2, value3,...)”?
<?php
include "conf.ini"; //connection to the db
$getValue=$_REQUEST['value'];
$getTable=$_REQUEST['table'];
// test********************
print_r($getValue);
print '<br>';
print $getTable;
// test********************
if (!$_POST['submit']) {
print 'Please input data';
} else {
mysql_query ("INSERT INTO $getTable VALUES (?????)");
}
?>
【问题讨论】:
-
你不能在一个有 3 列的表中插入 4 个条目——如果这样做 MySQL 会给你一个错误。您说,您已经列出了所有表,我想您正在从
information_schema数据库中读取一致的信息。如果这样做,您还知道每个表的列数!?