sql语句中的文本变量-PHP


text variable in sql statement - PHP

我试图在SQL语句中获取我的变量,put SQL不将其视为字符串。我找了很长时间的解决办法,但我想不出来。

<?php ob_start(); ?>
    <h2 class="title_test"></h2>
    <?php $contents = ob_get_contents(); 
    $test = 'Singer/Songwriter Nadine Shah Interview';
    $myText = (string)$contents;
    $result = mysqli_query($con, "SELECT channel_id FROM guestlist_tvs WHERE title = '$myText'");
    $row = mysqli_fetch_array($result);
    echo $row[0];
?>

ob_start从h2 获取文本

myText从$contents(介于h2之间的值)中生成一个字符串。但是如果我运行sql语句,我不会得到任何结果。

如果我把它作为SQL语句;

$result = mysqli_query($con, "SELECT channel_id FROM guestlist_tvs WHERE title = '$test'");

它返回正确的标题。。所以把我的变量转换成字符串有问题,我不知道如何修复它

我们将非常感谢您的每一条评论。

感谢

<?php ob_start(); ?>
<h2 class="title_test"></h2>
<?php $contents = ob_get_contents(); 
$test = 'Singer/Songwriter Nadine Shah Interview';
$myText = mysqli_real_escape_string($con, trim(strip_tags($contents)));
$result = mysqli_query($con, "SELECT channel_id FROM guestlist_tvs WHERE title = '$myText'");
$row = mysqli_fetch_array($result);
echo $row[0]; 
?>

这个怎么样?

试试这种方法"SELECT channel_id FROM guestlist_tvs WHERE title='"$测验"'"