>백엔드 개발 >PHP 튜토리얼 >PHP求助!在一个php文件中如何执行两个不同的insert语句?

PHP求助!在一个php文件中如何执行两个不同的insert语句?

WBOY
WBOY원래의
2016-06-23 14:08:31870검색

<?php session_start();include("Conn/conn.php");$ISBN=$_POST["ISBN"];$B_Name=$_POST["bookName"];$B_Author=$_POST["B_Author"];$B_Pub=$_POST["B_Pub"];$B_Author=$_POST["B_Author"];$B_BuyTime=date("Y-m-d");$B_Num=$_POST["B_Num"];$Content=$_POST["content"];echo $B_Num."<br>";//测试输出语句echo $Content;//测试输出语句$sql1=mysql_query("insert into book1(ISBN,B_Name,B_Author,B_Pub,B_BuyTime)values('$ISBN','$B_Name','$B_Author','$B_Pub','$B_BuyTime')");$sql2=mysql_query("insert into book2(B_Num,ISBN,Borrowed,Ordered,Introduction)values('$B_Num','$ISBN','否','否','$Content')");echo "<script language='javascript'>alert('图书信息添加成功!');history.back();location.href='book.php';</script>";?><meta http-equiv="Content-Type" content="text/html; charset=gb2312">

这是另一个PHP文件单击“提交”按钮后执行的PHP文件,通过输出测试$B_Num和$Content明确这两个变量中都有值。执行后查看mysql数据库可知book1表中成功插入一行数据,但是book2表中并未插入数据,好像只有sql1语句执行了,sql2语句并没有执行,那位大侠帮帮我修改一下,能达到的同时向两个不同表中插入数据就行!


回复讨论(解决方案)

var_dump($sql1, $sql2);
贴出结果


前两行为echo $B_Num."
";与echo $Content;显示结果,后三行为添加var_dump($sql1, $sql2)后的输出内容 

输出变量为NULL ? 
$sql2=mysql_query("insert into book2(B_Num,ISBN,Borrowed,Ordered,Introduction)values('$B_Num','$ISBN','否','否','$Content')") or die(mysql_error());
这样看看有不有错误信息


前两行为echo $B_Num."
";与echo $Content;显示结果,后三行为添加var_dump($sql1, $sql2)后的输出内容  你加载哪里的呀?
要在  $sql2=mysql_query("insert into book2(B_Num.... 的下一行加

肯定是你的insert语句有问题。首先检查每个val是否与field类型匹配,然后检查有没有非空字段没有赋值的。
然后你的SQL语句用的是单引号包含的变量,双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。如果上面方法都不行,就把单引号换成双引号试试。

谢谢大家!问题解决了,真如你们所言原来就是一个中文逗号的问题。。。让我郁闷了半天。。。再次感谢!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.