Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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
Php 从一个查询中查询不同的文件名_Php_Mysql_Arrays - Fatal编程技术网

Php 从一个查询中查询不同的文件名

Php 从一个查询中查询不同的文件名,php,mysql,arrays,Php,Mysql,Arrays,在某个网页中,我使用许多查询来获取文件名,并设置变量名,以便在整个页面中使用不同的文件。所有名称和id或存储在同一个sv_上传表中。必须有一个更快更精简的方法来做到这一点。有什么建议吗 /* SKIMAP */ $sQuery6 = "SELECT bestandnaam FROM sv_uploads where to_id=$to_id AND type_id=1"; $sResult6 = mysql_query($sQuery6); if ($sResult6) { $numsk

在某个网页中,我使用许多查询来获取文件名,并设置变量名,以便在整个页面中使用不同的文件。所有名称和id或存储在同一个sv_上传表中。必须有一个更快更精简的方法来做到这一点。有什么建议吗

/* SKIMAP */
 $sQuery6 = "SELECT bestandnaam FROM sv_uploads where to_id=$to_id AND type_id=1";
 $sResult6 = mysql_query($sQuery6);
 if ($sResult6) {
 $numskimap = mysql_num_rows($sResult6);
 }

 if ($numskimap>0)  {
 $rows6 = mysql_fetch_assoc($sResult6);
 $skimap = $rows6['bestandnaam'];
 }

 /* SUMMERMAP */
 $sQuery6a = "SELECT bestandnaam FROM sv_uploads where to_id=$to_id AND type_id=2";
 $sResult6a = mysql_query($sQuery6a);
 if ($sResult6a) {
 $numsummermap = mysql_num_rows($sResult6a);
 }

 if ($numsummermap>0)  {
 $rows6a = mysql_fetch_assoc($sResult6a);
 $summermap = $rows6a['bestandnaam'];
 }

etc

用例或where条件中的if-else如果您重复代码,那么总是有更好的方法,可能是一个单独的查询,例如:
选择count(1)作为total,bestandnaam FROM sv_uploads where to_id=$to_id,并键入介于1和30之间的_id
30是您重复的迭代for@GordonM:mysql_*不是一个好方法?您的建议是什么?@mark guess GordonM建议您使用PDO或mysqli扩展,以避免查询中可能出现的SQL注入。@mark您应该查看mysqli或PDO,它们是在考虑MySQL5的情况下构建的,并且是积极维护的,提供诸如预处理语句和事务管理之类的功能,并保证在可预见的将来仍然使用PHP,而mysql则不是这样_*