1

所有代码是:

$(document).ready(function(){
    $('#sub').click(function() {
        var r = confirm("سلام")
        if (r==true){
        var in_code=document.getElementsByName("code")[0].value;
        var echo="<?php
        include ('conect.php');
        $res2=mysql_query("select * from products where code=".echo('document.write(in_code);');." ");
        $row2=mysql_fetch_array($res2);
        echo $row2['name'];
          ?>" 
        alert(echo);            }
        else {
            document.getElementById("frm1").reset();
            } 

在这一行错误中:

$res2=mysql_query("select * from products where code=".echo('document.write(in_code);');." ");

echo('document.write(in_code);'); 不工作

如何修复他的或它做得更好?

4

2 回答 2

1

转义引号

var echo="<?php
    include (\'conect.php\');
    $res2=mysql_query(\"select * from products where code=\".echo('document.write(in_code);');.\" \");
    $row2=mysql_fetch_array($res2);
    echo $row2['name'];
      ?>";

;在最后添加。

于 2013-03-29T07:28:17.707 回答
1

这可能是您正在寻找的内容,但是您将客户端与服务器端混淆了。该脚本不起作用,因为 javascript 是客户端而 php 是服务器端,它只会打印/警报作为文本而不解析为 php 脚本。

var echo="<?php
include 'conect.php';
$res2 = mysql_query(\"select * from products where code='" + in_code + "'\");
$row2 = mysql_fetch_array($res2);
echo $row2['name'];
?>";

要使这样的事情起作用,您需要使用 Ajax。将这样的内容添加到您的 js 中。

$(document).ready(function(){
    $('#sub').click(function() {
        var r = confirm("سلام")
        if (r==true){
            var in_code=document.getElementsByName("code")[0].value;
            var request = $.ajax({
                url: "queryscript.php",
                type: "post",
                dataType: "html" ,
                data: {inCode: in_code}
                success: function(response){
                    alert(response);
                }
            });
        }else{
            document.getElementById("frm1").reset();
        }
    });
});

然后使用文件 queryscript.php 检索数据:

<?php
    include 'conect.php';
    $foo = $_POST['inCode'];
    $res2 = mysql_query("select * from products where code='$foo'");
    $row2 = mysql_fetch_array($res2);
    echo $row2['name'];
?>

我没有测试上面的代码,但它应该给你一个开始。

于 2013-03-29T07:39:34.133 回答