繁体   English   中英

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

[英]passing php variable as function argument

我有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-->
}

您是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。 (为您提供建议)

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

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

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

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

回显的简写: <?=

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM