我是编程方面的新手但是这里有。我使用PhpMyAdmin作为学术课程的一部分,但我的知识有限,但我学得很快,尽管我的大学支持有限。
我希望创建一个简单的培训需求分析数据库,只需要成为原型。虽然我被卡住了,但我已经创建了我的表并尝试了脚本。我希望我的页面显示每个问题的单选按钮(我现在通常称之为技能问题1,2,3等)并将答案插入到我的tnaanswers表中。
我已经查询了这个网站以寻求支持并尝试了各种建议,尽管我无法让它发挥作用。我得到的语法错误是第40行的未定义的帖子,它引用了“技能问题1”标题下的第一篇文章。
非常感谢任何帮助。我知道mysql是折旧的,但我不太了解mysqli或pdo来改变我的所有脚本来匹配。
我的tnaanswers表的列如下:
UserID - 我的用户表的主键,尝试唯一标识登录的用户并将其插入到我的tnaanswers表中。
TnaID - 我的tnaquestions表的主键,用于标识问题和相关的支持视频。
TnaValue - 如果用户在每个无线电上选择是或否,将为Y或N.
我已经使用了动作displaytnavideos.php,因为我希望使用此页面来运行查询以提取Y值并显示我的视频内容以供用户选择是的视频。
我的脚本如下:
<?php
require_once("db_connection.php");
session_start();
//Select database
$database = "com904";
$db = mysql_select_db($database) or die("Unable to select database");
$radioPost="INSERT INTO tnaanswers (UserID, TnaID, TnaValue)VALUES
(('$_POST[UserID]', 'Tna1', '$_POST[Tna1]),
('$_POST[UserID]', 'Tna2', '$_POST[Tna2]),
('$_POST[UserID]', 'Tna3', '$_POST[Tna3]),
('$_POST[UserID]', 'Tna4', '$_POST[Tna4]),
('$_POST[UserID]', 'Tna5', '$_POST[Tna5]),
('$_POST[UserID]', 'Tna6', '$_POST[Tna6]),
('$_POST[UserID]', 'Tna7', '$_POST[Tna7]),
('$_POST[UserID]', 'Tna8', '$_POST[Tna8]),
('$_POST[UserID]', 'Tna9', '$_POST[Tna9]),
('$_POST[UserID]', 'Tna10', '$_POST[Tna10]));
mysql_query($query) or die(mysql_error());
?>
<html>
<head>
<title>Do you require support with the following ICT skills? </title>
</head>
<body>
<h3>Skills question 1</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna1" value="Y"><label>Yes</label>
<input type="radio" name="Tna1" value="N"><label>No</label><br/>
<br>
<h3>Skills question 2</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna2" value="Y"><label>Yes</label>
<input type="radio" name="Tna2" value="N"><label>No</label><br/>
<br>
<h3>Skills question 3</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna3" value="Y"><label>Yes</label>
<input type="radio" name="Tna3" value="N"><label>No</label><br/>
<br>
<h3>Skills question 4</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna4" value="Y"><label>Yes</label>
<input type="radio" name="Tna4" value="N"><label>No</label><br/>
<br>
<h3>Skills question 5</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna5" value="Y"><label>Yes</label>
<input type="radio" name="Tna5" value="N"><label>No</label><br/>
<br>
<h3>Skills question 6</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna6" value="Y"><label>Yes</label>
<input type="radio" name="Tna6" value="N"><label>No</label><br/>
<br>
<h3>Skills question 7</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna7" value="Y"><label>Yes</label>
<input type="radio" name="Tna7" value="N"><label>No</label><br/>
<br>
<h3>Skills question 8</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna8" value="Y"><label>Yes</label>
<input type="radio" name="Tna8" value="N"><label>No</label><br/>
<br>
<h3>Skills question 9</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna9" value="Y"><label>Yes</label>
<input type="radio" name="Tna9" value="N"><label>No</label><br/>
<br>
<h3>Skills question 10</h3>
<form method="post" action="displayTnaVideos.php">
<input type="radio" name="Tna10" value="Y"><label>Yes</label>
<input type="radio" name="Tna10" value="N"><label>No</label><br/>
<br>
<input type="submit" name="submit" Value="submit">
</body>
</html>
</html>
答案 0 :(得分:0)
这里的主要问题是您的INSERT语句,该语句错误地使用引号并且缺少连接。此外,它在分号前的最后一个错过了最后的双引号;
在纯文本之间切换,例如&#34; Tna1&#34;和一个php变量(可能是以美元符号$开头的任何东西),你需要连接它们。在这个例子中,我使用了一段时间。要做到这一点,但也有其他方法,例如使用花括号{}
$radioPost="INSERT INTO tnaanswers (UserID, TnaID, TnaValue) VALUES
(
('".$_SERVER['REMOTE_ADDR']."', 'Tna1', '".$_SERVER['REMOTE_ADDR']."'),
('".$_POST['UserID']."', 'Tna1', '".$_POST['Tna1']."'),
('".$_POST['UserID']."', 'Tna2', '".$_POST['Tna2']."'),
('".$_POST['UserID']."', 'Tna3', '".$_POST['Tna3']."')
)";