PHP代码的错误更正
我已经编写了以下代码,但无法找出其中的错误 它不会弹出任何错误。它只是停留在html页面上 有什么问题吗 html页面PHP代码的错误更正,php,jquery,Php,Jquery,我已经编写了以下代码,但无法找出其中的错误 它不会弹出任何错误。它只是停留在html页面上 有什么问题吗 html页面 <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ function get(){ $("#
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
function get(){
$("#button1").click(function(){
$.post('script_1.php', { name: form.name.value },
function(output) {
$('#age').html(output).show();
}) ;
});
}
$("#button2").click(function(){
$('form#myForm').attr({action: "script_2.php"});
$('form#myForm').submit();
});
});
</script>
</head>
<body>
<form id="myForm" method="post">
doi: <input type="text" name="name"/>
<input type="button" id="button1" value ="Get" onclick="get();"/>
<input type="button" id="button2" value="Submit to script 2" />
title:<input type="text" name="title"/>
</form>
<div id="age"></div>
</body>
</html>
$(文档).ready(函数(){
函数get(){
$(“#按钮1”)。单击(函数(){
$.post('script_1.php',{name:form.name.value},
功能(输出){
$('#age').html(输出).show();
}) ;
});
}
$(“#按钮2”)。单击(函数(){
$('form#myForm').attr({action:'script_2.php});
$('form#myForm')。提交();
});
});
内政部:
标题:
第一个按钮的脚本_1.php是
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL ^ E_NOTICE);
//connect to database
$name = mysql_real_escape_string($_POST['name']);
if ($name==NULL)
echo "please enter an id!";
else
{
$age= mysql_query("SELECT title FROM parentid WHERE id ='$name'");
$age_num_rows = mysql_num_rows($age);
if ($age_num_rows==0)
echo "id does not exist";
else
{
$sql ="SELECT * FROM parentid WHERE id = '$name'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$abc_output= "Existing data of the record <br />";
$abc_output .="Title: " . $row['title'] . "<br />" ;
$abc_output .="Report No: " . $row['reportno'] . "<br />" ;
$abc_output .="URL: " . $row['calc_url'] . "<br />" ;
$abc_output .="Institution: " . $row['institution'] . "<br />" ;
}
}
echo $abc_output;
}
}
?>
首先,您会想到以下几点:
if ($name==NULL)
echo "please enter an id!";
$name = mysql_real_escape_string($_POST['name']);
应该更像
if (empty($name))
echo "please enter an id!";
if(isset($_POST['name'])) $name = mysql_real_escape_string($_POST['name']);
else echo "they didnt use the form.";
接下来,您将看到:
if ($name==NULL)
echo "please enter an id!";
$name = mysql_real_escape_string($_POST['name']);
它应该更像我
if (empty($name))
echo "please enter an id!";
if(isset($_POST['name'])) $name = mysql_real_escape_string($_POST['name']);
else echo "they didnt use the form.";
最后,我没有看到和编写连接到数据库的代码。您的HTML和Javascript代码有一个小问题。您声明单击函数的方式不正确。试试这个:
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#button1").click(function(){
$.post('script_1.php', { name: $('input[name$="name"]', '#myForm').val() },
function(output) {
$('#age').html(output).show();
});
});
$("#button2").click(function(){
$('form#myForm').attr({action: "script_2.php"});
$('form#myForm').submit();
});
});
</script>
</head>
<body>
<form id="myForm" method="post">
doi: <input type="text" name="name"/>
<input type="button" id="button1" value ="Get"/>
<input type="button" id="button2" value="Submit to script 2" />
title:<input type="text" name="title"/>
</form>
<div id="age"></div>
</body>
</html>
好的,我有一个解决办法给你
这是我的示例表单
<form action='posted.php' method='post'>
<input type='submit' name='b1' value='Button 1' /><br />
<input type='submit' name='b2' value='Button 2' /><br />
</form>
这里是“post.php”
<?php
if(isset($_POST['b1'])) echo 'Button 1';
if(isset($_POST['b2'])) echo 'Button 2';
?>
当您按下“按钮1”时,php会给出“按钮1”,按钮2也是如此。至于您的con-Post问题,为什么您首先需要两个submit按钮?一个submit按钮用于将数据库中的信息显示出来(它给出数据库中的信息,信息将显示在同一html页面上)另一个提交是为了更新数据库中的数据。这里有什么区别??对于)您已删除..我们需要同时关闭函数和$.post..这与您拥有的不同之处在于,您的单击事件具有非法的函数声明,这阻止了单击函数的启动。我已经测试了我发布的这段代码,它确实提交了信息。嘿,我花了一些时间才意识到你所说的。我的第一个按钮没有提交任何东西。它所做的只是从数据库中获取信息(没有提交)…我现在编辑了我的答案以包含两个查询。我不知道你的名字在哪里。我猜是parentid。对于您的查询,id是数值还是字符串值?这就是您的问题所在。您正在使用$name,这是某人的名字。您需要找到此人的$id,并使用该id代替其姓名。