我这里有一个代码将所有数据插入数据库...我的问题是它不起作用我的代码有什么问题?任何人都可以查找我的代码并看看有什么问题吗?请
html代码:
<form method="post" name="frm" id="frm" >
<input type="text" name="name1" id="query1" onBlur="getvalues1()" />
<input type="radio" name="optA" value="1" onClick="optTotal()" />1
<input type="radio" name="optA" value="2" onClick="optTotal()" />2
<input type="radio" name="optA" value="3" onClick="optTotal()" />3
|
<input type="radio" name="optB" value="1" onClick="optTotal()" />1
<input type="radio" name="optB" value="2" onClick="optTotal()" />2
<input type="radio" name="optB" value="3" onClick="optTotal()" />3
|
<input type="radio" name="optC" value="1" onClick="optTotal()" />1
<input type="radio" name="optC" value="2" onClick="optTotal()" />2
<input type="radio" name="optC" value="3" onClick="optTotal()" />3
|
<input type="radio" name="optD" value="1" onClick="optTotal()" />1
<input type="radio" name="optD" value="2" onClick="optTotal()" />2
<input type="radio" name="optD" value="3" onClick="optTotal()" />3
<input type="text" name="total" id="total" onKeyUp="optTotal()" /><br />
<input type="text" name="aic1" id="aic1"/>
<input type="text" name="batchcode1" id="batchcode1" /><br>
<input type="submit" value="Test" name="calculate" id="press" />
<br />
</form>
PHP 代码:
<?php
if(isset($_POST['calculate']))
{
$name = array_key_exists('name1', $_POST) ? $_POST['name1'] : null;
//$name = $_POST['name'];
$score1 = array_key_exists('optA', $_POST) ? $_POST['optA'] : null;
//$score1 = $_POST['optA'];
$score2 = array_key_exists('optB', $_POST) ? $_POST['optB'] : null;
//$score2 = $_POST['optB'];
$score3 = array_key_exists('optC', $_POST) ? $_POST['optC'] : null;
//$score3 = $_POST['optC'];
$score4 = array_key_exists('optD', $_POST) ? $_POST['optD'] : null;
//$score4 = $_POST['optD'];
$aic = $_POST['aic1'];
//$score3 = $_POST['optC'];
$batchcode = $_POST['batchcode1'];
//$score4 = $_POST['optD'];
$total = ($score1 + $score2 + $score3 + $score4);
mysql_query("INSERT INTO score (name,score1,score2,score3,score4,total,aic,bathcode) VALUES ('$name','$score1','$score2','$score3','$score4','$total','$aic','$batchcode')");
header("Location:home.php");
}
?>
评分脚本:
<script>
function optTotal()
{
var a1 = document.querySelector('input[name="optA"]:checked');
var b1 = document.querySelector('input[name="optB"]:checked');
var c1 = document.querySelector('input[name="optC"]:checked');
var d1 = document.querySelector('input[name="optD"]:checked');
if (a1 != null)
a1 = parseFloat(a1.value);
else
a1 = 0;
if (b1 != null)
b1 = parseFloat(b1.value);
else
b1 = 0;
if (c1 != null)
c1 = parseFloat(c1.value);
else
c1 = 0;
if (d1 != null)
d1 = parseFloat(d1.value);
else
d1 = 0;
document.frm.total.value=parseFloat(a1)+parseFloat(b1)+parseFloat(c1)+parseFloat(d1);
}
</script>
我找不到我的代码有什么问题...我的插入查询不起作用,如果我单击按钮,它不会保存。
最佳答案
我测试了它给我这个查询的代码:
INSERT INTO score
(name,score1,score2,score3,score4,total,aic,bathcode)
VALUES
('x1','2','3','2','2','9','x2','x3')
粘贴到phpmyadmin中,查看是否有错误信息。
但我并没有真正看到任何 MYSQL 连接和数据库选择
if(isset($_POST['计算'])) 因此,请确保您连接到 sql 并选择了数据库。
$con = mysql_connect("localhost","user","pass");
if(!$con){die("Can't connect.");}
mysql_select_db("database_name",$con);
因为它似乎正在生成有效的查询。
编辑: Ed Cottrell 所说的也很重要。 PDO 示例:
$db = new PDO('mysql:host=localhost;dbname=DB_NAME;charset=utf8', 'DB_USER', 'DB_PASS');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
插入部分:
$stmt = $db->prepare("INSERT INTO score (name,score1,score2,score3,score4,total,aic,bathcode)
VALUES (?,?,?,?,?,?,?,?)");
$stmt->execute(array($name,$score1,$score2,$score3,$score4,$total,$aic,$batchcode);
关于php - 我的 php 代码不会插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21360986/