Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sql语句中的文本变量-PHP_Php_Sql - Fatal编程技术网

sql语句中的文本变量-PHP

sql语句中的文本变量-PHP,php,sql,Php,Sql,我试图在SQL语句中获取变量,put SQL不将其视为字符串。 我已经寻找了很长一段时间的解决方案,但我想不出来 <?php ob_start(); ?> <h2 class="title_test"></h2> <?php $contents = ob_get_contents(); $test = 'Singer/Songwriter Nadine Shah Interview'; $myText = (string

我试图在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];
?>
它返回正确的标题。。 所以把我的变量转换成字符串是有问题的,我不知道如何修复它

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


谢谢

试着用这种方法从来宾列表中选择频道id,其中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]; 
?>

这个怎么样?

美元内容包含什么?你打开错误报告了吗?它包含视频的标题。如果我回显$contents,则会显示标题。是的,我知道$contents如何包含标题视频?它将包含HTML输出。标题中是否有?为什么不使用一个预先准备好的语句来阻止sql注入,让生活变得更简单呢?首先尝试转义文本,添加以下内容:$myText=$con->real\u escape\u stringcontents;本应使用prepared StationsThanks作为您的评论,但不幸的是,它不起作用:输出为空
<?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]; 
?>