如何在我的sql语句中使用变量和会话?

时间:2013-03-21 23:12:34

标签: php html sql

我一直在以不同的方式测试我的sql语句,但它不起作用。我在sql语句中编写变量和会话时遇到了麻烦。

function onelike()
{
    $_SESSION['admin_id']
    $resultLikeCheck = "SELECT FROM tbladminXshouts WHERE postId = $row['id'] AND admin_id = $_SESSION['admin_id']"; 
    $results = mysql_query($resultLikeCheck) or die('');

    if(mysql_num_rows($results) == 0) 
    {
        echo ('

                 `<form action="" method="POST"> 
                       <input type="hidden" name="id" value="'.$row['id'].'"/>
                       <input type = "submit" name="Gilla" value = "Gilla"/> 
                  </form>`

              ');
    }
}

它出了什么问题?

2 个答案:

答案 0 :(得分:2)

$resultLikeCheck = "SELECT FROM tbladminXshouts WHERE postId = $row['id'] AND admin_id ='{$_SESSION['admin_id']}'";

使用“{}”在字符串中插入变量。

答案 1 :(得分:0)

你可以试试这个。

$adminID= $_SESSION['admin_id'];
$rowID= $row['id'];
onelike($adminID,$rowID);

    function onelike($adminID,$rowID)
    {


    $resultLikeCheck = "SELECT * FROM tbladminXshouts WHERE postId = '{$rowID}' AND admin_id = '{$adminID}'";

    $results = mysql_query($resultLikeCheck) or die('');

我建议使用mysqli_ functions而不是mysql _

编辑: 我认为你的问题是你没有将变量传递给函数。 PHP中的函数有自己的局部变量,除非你发送它们,否则不能访问它们之外的变量 是的,@ Sajjad Merchant是对的,将变量插入到查询字符串中的最佳方法是使用“{}”