如何从PHP向Javascript发送变量?
如何使用Ajax将变量值从PHP发送到Javascript?下面是JS代码和PHP代码 PHP代码:如何从PHP向Javascript发送变量?,javascript,php,ajax,json,Javascript,Php,Ajax,Json,如何使用Ajax将变量值从PHP发送到Javascript?下面是JS代码和PHP代码 PHP代码: <?php $username = "trainerapp"; $password = "password"; $hostname = "localhost"; $link = @mysql_connect($hostname, $username, $password); if(@mysql_select_db("trainer_registra
<?php
$username = "trainerapp";
$password = "password";
$hostname = "localhost";
$link = @mysql_connect($hostname, $username, $password);
if(@mysql_select_db("trainer_registration"))
{
echo "Connected Successfully";
}
else
{
echo "Connection Error";
}
$select_query_num = @mysql_query("select id,program_name,company,date_prog from program_details");
$num_rows = @mysql_num_rows($select_query_num);
for ($i = 0; $i <= $num_rows; $i++){
$id = $_POST["idjs"];
$pgmname = $_POST["pgmnamejs"];
$comp = $_POST["compjs"];
$datephp = $_POST["datephpjs"];
$select_query = @mysql_query("select id,program_name,company,date_prog from program_details where id = $i");
$fetch_query = @mysql_fetch_assoc($select_query);
$id = $fetch_query['id'];
echo $id;
$pgmname = $fetch_query['program_name'];
echo $pgmname;
$comp = $fetch_query['company'];
echo $comp;
$datephp = $fetch_query['date_prog'];
echo $datephp;
}
?>
JS代码:
window.onload = function createdivs() {
var id;
var pgmname;
var comp;
var datephp;
var i = 1;
for (;i < 10;i++)
{
div = "<div>.display";
var list = document.createElement("div");
document.getElementById('fulldisplay').appendChild(list);
list.className = "container content-rows";
}
$.ajax({
url:'displaycontent.php',
data:{idjs:id, pgmnamejs:pgmname, compjs:comp, datephpjs:datephp},
type:'POST',
success:function(retval){
alert(retval);
}
});
}
window.onload=函数createdivs(){
变量id;
var-pgmname;
var-comp;
var-datephp;
var i=1;
对于(;i<10;i++)
{
div=“.display”;
var list=document.createElement(“div”);
document.getElementById('fulldisplay').appendChild(列表);
list.className=“容器内容行”;
}
$.ajax({
url:'displaycontent.php',
数据:{idjs:id,pgmnamejs:pgmname,compjs:comp,datephpjs:datephp},
类型:'POST',
成功:函数(retval){
警报(retval);
}
});
}
问题:
在JS代码中,对于VARI的每一个增量,我都需要对PHP文件进行Ajax调用,该文件将返回第一个值数组,第二个值数组,依此类推。我真的不知道该怎么做。最好有个解释。通过上面的代码,我只得到最后一个带有未识别索引错误的数组值。如果这不是一个正式的工作,那么只需在php脚本中回显HTML即可
$select_query = @mysql_query("select id,program_name,company,date_prog from program_details where id = $i");
$fetch_query = @mysql_fetch_array($select_query. MYSQL_NUM);
list($id, $pgname, $comp, $datephp) = $fetch_query;
echo "
<div>
$id $pgname $comp $datephp
</div>
";
$select\u query=@mysql\u query(“从程序详细信息中选择id、程序名称、公司、日期、进度,其中id=$i”);
$fetch\u query=@mysql\u fetch\u数组($select\u query.mysql\u NUM);
list($id、$pgname、$comp、$datephp)=$fetch\u query;
回声“
$id$pgname$comp$datephp
";
我不是php专家,但您似乎应该具备以下能力:
echo '<script type="text/javascript">';
// bunch of:
echo ' var myvar = ' + $fetch_query['myvar'] + ';';
// probably use a proper way to escape those things
echo '</script>';
echo';
//一堆:
echo'var myvar='+$fetch_query['myvar']+';';
//可能用一种合适的方法来逃避这些事情
回声';
或者任何构建php变量的小型全局可访问版本的东西
最好的办法是:
- 使用RESTAPI以json或任何您喜欢的格式提供数据
- 用它李>
我看到了关于angularjs的评论,在我看来,花点时间使用合适的javascript框架绝对不是浪费时间 您需要对来自$select_查询的结果使用json编码,然后可以使用ajax将结果转换为javascript
//echo the json_encode in php to see the results
json_encode($select_query)
//do ajax with jquery
$.ajax({
url: 'the page that has the $select_query which brings the results',
type: 'POST',
dataType: 'json',
data: data,
succes: function(data){
console.log(data);
}
});
现在你可以根据需要操纵数据。
thar是考虑使用盎格鲁JS IMRO的一个完美的原因。你能解释一下如何在盎格鲁JS中实现这一点吗?一个示例代码就足够了。请用一些例子解释一下,您正在window.onload上调用js(在页面完全加载之后),为什么不在页面加载上直接调用PHP呢?是的,AngularJS。。。让我们去用火箭筒杀死那只苍蝇。或者使用echo“var abc=”$身份证件""; 其他变量@VigneshAnandakumar也一样