求如何在文本框输入数据插入到数据库中
我是先一个查询,得到数据中的数据,然后对查询到的数据做修改,在文本框中输入,然后存到数据库中
我是先一个查询,得到数据中的数据,然后对查询到的数据做修改,在文本框中输入,然后存到数据库中
解决方案 »
- 关于session的持续时间
- 字符编码问题,进来看看
- 帮忙写个正则
- mysql数据库set类型如果更新“a,b,c”
- 请问哪里可以下载到php 4.0.0(win32)?在线等候
- 打开一个页面未执行完之前改变URL又转成打开另一个页面或者关闭它,那第一次打开执行的内容还会后台运行着吗?
- 如果限制登陆用户???
- 如何用GET方法处理内容是中文的表单
- 关于fopen打不开远程文件的问题,请各位帮忙解决一下
- 不可想象的问题:如何把一个长度未知的数组提交到另一个叶面?
- 新手php程序员,关于 Class 'SoapClient' not found in的错误,求解答
- 请看一下哪里出错了,不会代码,请帮忙,谢谢了。
<?php
require "dbconnect.php";
$fees=$_GET['fees'];
echo "<br><div align=center>$fees</div>"; //输出费用名
echo "<table width=450 border=1 align=center cellpadding=0 cellspacing=0>";
echo "<tr bgcolor=#CCCCCC height=25 align=center><td>住户号</td>";
echo "<td>住户名</td>";
echo "<td>费用项</td>";
echo "<td>费用</td>";
echo "<td>修改费用</td>";
echo "<td width=160>操作</td></tr>";if($fees=="请选择")
echo "<script>alert('请选择费用项');location.href='feecorrect.php'</script>";
else
$sql="select residentID,residentName,feename,fee from wuyefee where feename='$fees'"; //得到查询语句
$result=mysql_query($sql);
if($row=mysql_fetch_array($result))
{ do
{
list($residentID,$residentName,$feename,$fee)=$row;
$fee_sql="select fee from wuyefee where feename='$fees'";
$fee_result=mysql_query($fee_sql);
$fee_row=mysql_fetch_array($fee_result);
$points=$fee_row['fee']; //取出费用值
//设置隐藏空间用于存放费用名
echo "<input type=hidden value=$fees id='course'>";
echo "<td>$residentID</td>";
echo "<td>$residentName</td>";
echo "<td>$feename</td>";
echo "<td>$fee</td>";
//在文本框中输出费用值
echo "<td width=110><input id='points-$residentID' type=text size=12 vluse=$points></td>";
//设置保存超链接,单击超链接时调用run()函数
echo "<td><a href=# onclick=\"run(this.id,'$residentID')\" id='keep-$residentID'>保存</a> ";
//设置删除超链接
echo "<a href=# onclick=\"run(this.id,'$residentID')\" id='delete-$residentID'>删除</a></td></tr>";
echo "</tr>";
}while($row=mysql_fetch_array($result)); echo "</table>";
}
?>
<script>
//是用AJAX无刷新技术
var xmlHttp; //定义一个XMLHTTP变量
function GetXmlHttpObject() //XMLHTTP的实例化函数,用于创建一个XMLHTTP对象
{
var xmlHttp=null;
try
{
xmlHttp=new XMLHttpRequest();
}
catch(e)
{
try
{
ttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
mlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
//run()函数的参数str是超链接的id,num是费用文本框id的后缀
function run(str,num)
{
//调用GetXmlHttpObject()创建一个XMLHTTP对象
xmlHttp=GetXmlHttpObject();
var fees=document.getElementById("course").value; //得到费用名
var points=document.getElementById("points-"+num).value; //得到文本框中的费用值
var url="WuyeFee.php"; //服务器端在WuyeFee.php中处理
url=url+"?id="+str+"$points="+points+"$fees="+fees;
url=url+"$sid="+Math.random();
xmlHttp.open("GET",url,TRUE);
xmlHttp.send(null);
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4||xmlHttp.readyState=="complete")
{
alert(xmlHttp.responseText);
if(xmlHttp.responseText=='删除成功!')
decument.getElementById("points-"+num).value="";
}
}
}
</script>
require "dbconnect.php"
header("Content-Type:text/html;charset=gb2312"); //是用GB2312编码,防止输出中文时出现乱码
$id=$_GET['id']; //单击超链接得到的id值$fees=$_GET['fees'];
$points=$_GET['points'];
$array=explode("-",$id); //将字符串$id分解成数组
$action=$array[0]; //数组第一个值为单击的超链接的动作,keep或delete
$residentID=$array[1]; //第二个值为当前行的住户号
if($action=="keep"); //如果单击了保存超链接
{
if($points)
{
//调用存储过程WUYE_DATA实现物业费的插入和修改
$fee_sql="CALL WUYE_DATA('$residentID','$points')";
$fee_result=mysql_query($fee_sql);
if($fee_result)
echo "保存成功!";
else
echo "保存失败!";
}
else
echo "费用值为空,请输入费用值";}
if($action=="delete") //如果单击了删除链接
{
//调用存储过程WUYE_DATA,费用值参数的值设为-1
$fee_sql="CALL WUYE_DATA('$residentID',-1)";
$fee_result=mysql_query($fee_sql);
if(mysql_affected_rows($conn)!=0)
echo "删除成功!";
else
echo "删除失败!";
}
?>
url=url+"?id="+str+"$points="+points+"$fees="+fees; // url中GET参数的连接符是&, 不是$
大家并没有你的表结构,所以多数问题也分析不出来,只能建议你在所有mysql_query()后面加上一句echo mysql_error(); ,并且再打开PHP的所有错误,js的错误chrome和firefox的javascript控制台都会有显示的。贴出系统反馈的错误才能帮你立即解决。
另外,说句题外话,如果书上就这么个写法,那还是别看了,没有营养价值,而且还有逻辑上的漏洞,不要介意我说的话。不如去把php.net上手册多看几遍强。
<?php
// 假设你的要修改的文本有对应的id。
$id = 1;
$text = "这里就是你想要修改的文本,它会出现在文本框里";
?>
修改在这<br/>
<form action="save.php" method="POST" >
<input type="hidden" value="<?php echo $id ;>" name="id"/>
<textarea name="text"><?php echo $text; ?></textarea>
<input type="submit" value="修改好了,提交到save.php" />
</form>// 第二个文件,save.php ,将提交上来的新修改数据保存到数据库
<?php
// 连接数据库操作,省略
$id = $_POST['id'];
$text = $_POST['text'];
$sql = "INSERT INTO `tablename` (`id`, 'text')
VALUES ('{$id}', '$text')";
mysql_query($sql);
$success = mysql_affected_rows(); // 取得被影响行数,如果等于-1就算失败了
if($success === -1)
echo "失败了:".mysql_error();
else
echo "修改成功";
?>
再以后你可以把id以表单传参或ajax的方式传递到save.php,Js获取值很简单, document.getElementById('id').value;
createXMLHttpRequest_all();
url = "send.php?cleanTmp=clean&ran="+Math.random();
method = "GET";
xmlHttp.open(method,url,true);
xmlHttp.onreadystatechange = null;
xmlHttp.send(null);
url=url+"$sid="+Math.random();// 处理响应代码块
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
alert(xmlHttp.responseText);
if(xmlHttp.responseText == "success") // 不建议你去比较中文,可能会有乱码问题
decument.getElementById("points-"+num).value="";
}else
alert("请求出错,检查路径等等");
}