PHP创建表脚本并在表中插入数据
问题描述:
我收到一个错误“未定义的变量:表C:\ xampp \ htdocs \ online test \ study_question1.php on line 15”如何创建表和添加数据它。PHP创建表脚本并在表中插入数据
<?php
$connection = mysqli_connect('localhost','root','','userquestion') or die(mysqli_error($connection));
define("table","table_name");
if(isset($_POST['next'])){
$table=$_POST['table_name'];
$query= "CREATE TABLE `userquestion`.`$table` (`id` INT(15) NOT NULL AUTO_INCREMENT , `question` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL , `option1` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL , `option2` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL , `option3` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL , `option4` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL , `true_ans` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB;";
$data = mysqli_query($connection,$query);
header('Location: study_question1.php');
return $table;
}
?>
<?php
include "online.php";
$connection = mysqli_connect('localhost','root','','userquestion') or die(mysqli_error($connection));
if(isset($_POST['submit'])) {
$question = $_POST["question"];
$option1 = $_POST['option1'];
$option2 = $_POST['option2'];
$option3 = $_POST['option3'];
$option4 = $_POST['option4'];
$true_ans = $_POST['true_ans'];
$query = "INSERT INTO `userquestion`.`$table` (question,option1,option2,option3,option4,true_ans) VALUES ('$question','$option1','$option2','$option3','$option4','$true_ans')";
$data = mysqli_query($connection,$query);
if($data) {
echo "ab dusra dal...";
}
}
?>
答
你没有在study_question1.php
声明table
变量。你可以这样来做:
Code1.php
<?php
$tableName = 'name';
header('Location: Code2.php?tableName=' . $tableName);
然后在Code2.php
<?php
$tableName = $_GET['table'];
还可以实现使用会话类似的效果。
答
如在您的查询中,您使用$table
这是常数,而不是使用table
没有$ sign,您不能使用常量作为变量。
希望这会帮助你:)
你可以指定哪些代码对应'study_question1.php'? – Ayush
其中包含online.php的第二个代码 –