Php 如何知道某一行存在

Php 如何知道某一行存在,php,mysql,database,if-statement,Php,Mysql,Database,If Statement,我想阻止用户评论删除的线程。 我设置了一个变量(我们称之为“tnum”)来标识原始线程及其注释,这样我就可以在同一个网页中显示它们。 当我删除一个线程时,原始线程和所有注释会立即被删除 (从~中删除,其中tnum为~) 因此,我认为我可以使用它来阻止对已删除线程的评论提交 当表中没有具有特定tnum值的行时,我想发出一条错误消息 if( 'some code' ) { error("There is no data for the thread."); } 有人能帮我吗 谢谢。要知道表中是

我想阻止用户评论删除的线程。 我设置了一个变量(我们称之为“tnum”)来标识原始线程及其注释,这样我就可以在同一个网页中显示它们。 当我删除一个线程时,原始线程和所有注释会立即被删除 (从~中删除,其中tnum为~)

因此,我认为我可以使用它来阻止对已删除线程的评论提交

当表中没有具有特定tnum值的行时,我想发出一条错误消息

if( 'some code' ) {

error("There is no data for the thread.");

}
有人能帮我吗


谢谢。

要知道表中是否存在列,可以运行此查询:

SHOW COLUMNS FROM `table` LIKE 'fieldname';

要知道表中是否存在列,可以运行此查询:

SHOW COLUMNS FROM `table` LIKE 'fieldname';
您可以在MySQL中使用COUNT()来获取符合条件的行数。像这样的

$db = new PDO( /* connection details */ );
$sth = $db->prepare( 'SELECT COUNT(*) AS numRows FROM `table` WHERE tnum = :tnum' );
$sth->execute( array( 'tnum' => $tnum ) );
$result = $sth->fetchAll();
if( $result['numRows'] == 0 ) {
    error("There is no data for the thread.");
}
您可以在MySQL中使用COUNT()来获取符合条件的行数。像这样的

$db = new PDO( /* connection details */ );
$sth = $db->prepare( 'SELECT COUNT(*) AS numRows FROM `table` WHERE tnum = :tnum' );
$sth->execute( array( 'tnum' => $tnum ) );
$result = $sth->fetchAll();
if( $result['numRows'] == 0 ) {
    error("There is no data for the thread.");
}

OP希望检查表中的某一行,而不是某一列。很抱歉,我是OP。我在撰写问题时混用了术语(请参阅编辑历史记录)。Aleroot没有做错任何事。OP希望检查表中的某一行,而不是某一列。很抱歉,我是OP。我在撰写问题时混用了术语(请参见编辑历史记录)。Aleroot没有做错任何事。您是否使用任何数据库层或ORM?@PavelS。我不这么认为。我是个新手。我真的不知道这些是什么。你使用像$db=newpdo(/*连接细节*/)这样的东西吗;在评论中,或者只是“标准”功能,比如?顺便说一句,我最喜欢的工具(有点老了,但它可以完成任务):你使用任何数据库层或ORM吗?@PavelS。我不这么认为。我是个新手。我真的不知道这些是什么。你使用像$db=newpdo(/*连接细节*/)这样的东西吗;在评论中,或者只是“标准”功能,比如?顺便说一下,我最喜欢的工具(有点旧,但它可以做到这一点):