将php变量作为函数参数传递

时间:2018-11-02 03:36:07

标签: javascript php

我有home.php,并且我试图在onclick()函数中传递两个php变量。但这行不通。我是php的新手,所以任何建议都将非常有帮助。

<form action="process/home.php" method="post">
        <input type="text" name="userfrom" value="<?php echo htmlspecialchars($username); ?>"/>
        <input type="submit" onclick=show('$user_id','$_SESSION['id']') value="Add Friend"/>
    </form>

在show()函数中,我想将值存储在数据库中。

function show($userfrom,$userto){

    $sql="INSERT INTO user (userfrom,userto) VALUES ('$userfrom','$userto')";
    mysql_query($sql);
    <!--it is not working-->
}

3 个答案:

答案 0 :(得分:1)

您是php的新手。因此,请记住这一点,您不能在JS代码中使用PHP函数。 onClick事件需要js函数。因此,首先,您应该使用表单传递变量,然后获取它,然后可以使用php函数。

您可以使用此代码,但不推荐使用

<form action="" method="post">
    <input type="text" name="userfrom" value="<?= htmlspecialchars($username); ?>"/>
    <input type="submit" name="addFriend" />
</form>

<?php
    if (isset($_POST['addFriend'])) {
        show($user_id, $_SESSION['id']);
    }
?>

您应该了解jquery ajax。 (为您提供建议)

答案 1 :(得分:0)

尝试下面的代码,您有一些语法错误,

as.data.frame

答案 2 :(得分:0)

您需要将php变量回显为HTML元素。

onclick=show('<?=$user_id;?>','<?=$_SESSION['id'];?>')

回显的简写:<?=

并且不要忘记在传递字符串值时添加引号。