簡體   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