2个SQL查询.两者独立工作.当我把它们放在一起时,第一个查询的结果变量是空的.为什么?
2 SQL queries. Both work independently. When i do them together, result variables from 1st query are empty. Why?
我已经成功地将两个变量从Javascript传递到PHP,使用:
$("#element").load("script.php",{dataOne:x,dataTwo:y},function() {alert(y);});
以下两项独立工作:
数据第一:
$date = strval(gmdate("Y-m-d",strtotime($_POST['dataOne']))."T00:00:00");
$query = $dbc->prepare("SELECT NEW_DATE, BC_1MONTH, BC_3MONTH, BC_6MONTH, BC_1YEAR, BC_2YEAR, BC_3YEAR, BC_5YEAR, BC_7YEAR, BC_10YEAR, BC_20YEAR, BC_30YEAR FROM curve WHERE NEW_DATE=?");
$query->bind_param('s',$date);
$query->execute();
$query->bind_result($a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l);
然后是数据二:
$date = strval(gmdate("Y-m-d",strtotime($_POST['dataTwo']))."T00:00:00");
$query = $dbc->prepare("SELECT NEW_DATE, BC_1MONTH, BC_3MONTH, BC_6MONTH, BC_1YEAR, BC_2YEAR, BC_3YEAR, BC_5YEAR, BC_7YEAR, BC_10YEAR, BC_20YEAR, BC_30YEAR FROM curve WHERE NEW_DATE=?");
$query->bind_param('s',$date);
$query->execute();
$query->bind_result($a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l);
当我尝试将两者结合起来时,用这个:
$fromDate = strval(gmdate("Y-m-d",strtotime($_POST['dataOne']))."T00:00:00");
$query = $dbc->prepare("SELECT NEW_DATE, BC_1MONTH, BC_3MONTH, BC_6MONTH, BC_1YEAR, BC_2YEAR, BC_3YEAR, BC_5YEAR, BC_7YEAR, BC_10YEAR, BC_20YEAR, BC_30YEAR FROM curve WHERE NEW_DATE=?");
$query->bind_param('s',$fromDate);
$query->execute();
$query->bind_result($a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l);
$toDate = strval(gmdate("Y-m-d",strtotime($_POST['dataTwo']))."T00:00:00");
$query->bind_param('s',$toDate);
$query->execute();
$query->bind_result($m,$n,$o,$p,$q,$r,$s,$t,$u,$v,$w,$x);
第一个查询有空变量。对我来说,存储第一次执行结果的最佳方式是什么?最终,它们将进入一个javascript数组,以便在图中使用。
当我让它单独为dataOne工作时,我将结果连接到我的javascript中,如下所示:
data: ['.$b.','.$c.','.$d.','.$e.','.$f.','.$g.','.$h.','.$i.','.$j.','.$k.','.$l.']
在执行第二个查询之前,我尝试在我的PHP中这样做,以避免它丢失。这目前不起作用:
$curve = '['.$b.','.$c.','.$d.','.$e.','.$f.','.$g.','.$h.','.$i.','.$j.','.$k.','.$l.']';
data: '.$curve.'
您不会使用.load()
发布帖子,而是使用.post()
,或者像一样使用$_GET
传递变量
$("#element").load("script.php?dataX="+x+"&dataTwo="+y+" #element");
jquery post : http://api.jquery.com/jquery.post/
jquery load : http://api.jquery.com/load/
**EDIT** if you want to use `.load()`
$( "#element" ).load( "script.php", { "dataOne": x, "dataTwo":y } );
$date = strval(gmdate("Y-m-d",strtotime($_POST['dataOne']))."T00:00:00");
$date2 = strval(gmdate("Y-m-d",strtotime($_POST['dataTwo']))."T00:00:00"); //<--- same date
$query = $dbc->prepare("SELECT NEW_DATE, BC_1MONTH, BC_3MONTH, BC_6MONTH, BC_1YEAR, BC_2YEAR, BC_3YEAR, BC_5YEAR, BC_7YEAR, BC_10YEAR, BC_20YEAR, BC_30YEAR FROM curve WHERE NEW_DATE=?");
$query->bind_param('s',$date);
$query->bind_param('s',$date2); //<--- new query
$query->execute();
$query->bind_result($a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l);
相关文章:
- 而循环只设置php中输入字段中的第一个值
- 错误:$injector:modulerr模块错误(我的第一个SPA应用程序)
- IE11中的第二个调用取消了第一个Fetch API调用
- Javascript XMLHttpRequest——只有第一个POST请求有效
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- 将OnClick函数设置为<ul>,最后一个ul是擦除第一个ul-s
- 向更新mysql查询传递一个id
- RxJS油门行为;立即获取第一个值
- Angular UI网格:如何通过第一个UI网格中的按钮使第二个UI网格可见
- 选择多个实例中的第一个
- 如何在调用下一个请求之前完成第一个Ajax Get请求
- Lodash:返回对象的第一个键,该对象的值(即数组)中有一个给定的元素(即字符串)
- 看起来第一个console.log是'It’不太对
- 与杜兰达尔合作的第一个JavaScript项目.尝试从第三方 API 获取数据
- 节点发布错误对象的第一个“属性”
- Javascript:表单验证getElementById仅返回第一个id元素
- 仅将 CSS 规则应用于
中的第一个 ,而不分配类/ID - JS在隐藏未定义的值后仅从数组中返回第一个id的值
- 高图表,检测点是否在堆栈中的第一个
- json结果显示第一个值