这可能是一个愚蠢的问题,
我创建了一个PHP,以便在我的网站中以及最终结果上进行一些检查
我使用echo
进行打印或在功能失败的情况下打印“找不到任何内容”
但是问题是,即使我没有单击“提交”按钮,PHP文件仍继续打印“未找到内容”
if (function failed) {
echo "not found";
} else {
echo "do stuff here";
}
php文件继续打印“未找到”
我尝试了ob_clean() ob_end_flush() ob_end_clean()
,但没有成功
完整代码:
<!DOCTYPE html>
<html>
<head>
<title>Check IMDB</title>
</head>
<body>
<div class="container">
<form method="POST" action="">
<input type="submit" value=" Check IMDB ">
<div>
<textarea style="width: 50%; margin-top:7px; height: 150px;" id="urlbox" name="urlbox" placeholder="Add imdb links here (one per line)"></textarea>
</div>
</form>
</div>
<?php
$imdblink = "";
$imdblink = $_POST['urlbox'];
?>
<?php
set_time_limit(0);
require(dirname(__FILE__) . '/wp-load.php');
global $wpdb;
echo "<br>";
if (!preg_match_all('~tt\d{7,8}~', $imdblink, $ttids)) {
echo "no ttids found";
} else {
$resultSet = $wpdb->get_results("SELECT meta_value FROM wp_postmeta WHERE meta_key = 'imdb' AND meta_value IN ('" . implode("','", $ttids[0]) . "');");
$foundInDatabase = array_column($resultSet, "meta_value");
foreach ($ttids[0] as $index => $ttid) {
if (in_array($ttid, $foundInDatabase)) {
$ttid = '<a style="color:blue;" href="https://www.imdb.com/title/'.$ttid.'/">'.$ttid.'</a>';
}
echo "<div>" , ($index + 1) , "- {$ttid}</div>\n";
}
}
?>
</body>
</html>
答案 0 :(得分:1)
您应该将名称属性添加到提交按钮,并检查是否按下了按钮。
以您为例,每次运行脚本时都在检查urlbox
。
<input type="submit" name="submit" value=" Check IMDB ">
<?php
if(isset($_POST['submit'])) {
//Here add your code
}
?>
仅当按下按钮时,脚本才不会检查urlbox
。