Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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
Try-and-Catch-error/PHP_Php_Mysql_Try Catch - Fatal编程技术网

Try-and-Catch-error/PHP

Try-and-Catch-error/PHP,php,mysql,try-catch,Php,Mysql,Try Catch,我有以下PHP代码: try{ $article_ID =$_GET["articleID"]; if(!$article_ID) { throw new Exception("Invalid query: ". mysql_error()); } else { $select_query = mysql_query("SELECT articleContent, articleTitle From articles WHER

我有以下PHP代码:

try{ 
    $article_ID =$_GET["articleID"];  
    if(!$article_ID) {
        throw new Exception("Invalid query: ". mysql_error());
    }
    else {
        $select_query = mysql_query("SELECT articleContent, articleTitle From articles WHERE articleID=$article_ID AND typeID=$type_ID");
    }
}
catch(Exception $e) { 
    //echo $e->getMessage();
    $select_query = mysql_query("SELECT articleContent, articleTitle From articles       WHERE typeID=$type_ID");
}
$row = mysql_fetch_assoc($select_query); 
echo '<h1>'.$row['articleTitle'].'</h1>';
echo  $row['articleContent'];
试试{
$article\u ID=$\u GET[“article ID”];
如果(!$article\u ID){
抛出新异常(“无效查询:.mysql_error());
}
否则{
$select\u query=mysql\u query(“从文章中选择articleContent、articleTitle,其中articleID=$article\u ID和typeID=$type\u ID”);
}
}
捕获(例外$e){
//echo$e->getMessage();
$select\u query=mysql\u query(“从文章中选择articleContent,articleTitle,其中typeID=$type\u ID”);
}
$row=mysql\u fetch\u assoc($select\u query);
回显'.$row['articleTitle'].';
echo$row['articleContent'];

if station(
if(!$article\u ID)
)中的条件应该尝试在get方法中获取值,如果不能,它将抛出异常并传递到
catch
部分,它工作正常,但每当涉及到catch时,我都会在网页中看到错误消息(
注意:第6行的未定义索引:articleID
)为什么?如何隐藏此消息?

通知不会引发异常。通知在第一行,因为$\u GET数组变量中没有“ArticleID”键

我想你可以这样做

$articleID = isset($_GET["articleID"]) ? $_GET["articleID"] : '';

这个问题多次被问到,使用
isset($\u GET[“articleID”])
。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果你选择PDO,