-1

我试图通过仅获取其名称的一部分来读取存储在 PHP 目录中的图像。图像命名如下,

AT-1410f1654.jpg
AT-1410_1655.jpg
AT-1410_1656.jpg
AT-1410_1657.jpg
AT-1410_1658.jpg
AT-1410_1659.jpg

我已经尝试了下面的代码,但即使我使用 PHP substr() 方法它也不起作用,但它也不起作用,

    $dbImage=$row["pref"];
    $imageName=$dbImage;
    $extension=".jpg";
    $filename=$imageName.$extension;
    echo "$filename+<img src='proppics/$filename'>"; 

关于如何做到这一点的任何想法

完整代码

$limit=10; 
$con=mysql_connect("localhost","root","");
mysql_select_db("movedb") or die("Unable to select database");
$query="select * FROM properties where `name`='Beata Grande 1' & `catergory`='Villas'& `price`=202800 & `area`='Arenas'& `bedrooms`=2 & `region`='Axarquia'";
$numresults=mysql_query($query,$con);
$numrows=mysql_num_rows($numresults);
$result = mysql_query($query) or die("Couldn't execute query");
echo "<center>";
echo "<p>You searched for: &quot;" . $properties . "&quot;</p>";
echo "<form name=payment action='properties_details.php'>";
echo "Results <br>";
  while ($row= mysql_fetch_array($result)) {
    $id=$row['id'];
    $pid=$row['pref'];
    // Retrieve the balance database fields

      echo "<p>Property ID &nbsp".$pid;
      echo "<br> <p> Name &nbsp";
      echo $row["name"];
      echo "<br>  Properties &nbsp";
      echo $row["catergory"];
      echo "<br> Description &nbsp";
    // Print results
 echo "<br>";
 echo "<input type=submit name=btnbuy value=MoreDetails> "; 
4

3 回答 3

0

我不是 100% 确定您要达到的目标。但是如果你想在“_”之后或之前只选择文件名的一部分,你可以使用 PHPsexplode() 函数。

在你的情况下写作:

print explode("_", $dbImage);

会有类似这样的输出:

Array(
    [0] => AT-1410
    [1] => 1655.jpg
)
于 2012-07-15T15:09:05.227 回答
0

怎么样glob

您的问题不够清楚,无法提供更全面的答案

于 2012-07-15T09:40:06.733 回答
0

首先,使用列出目录中的所有文件scandir

http://php.net/manual/en/function.scandir.php

然后使用检查现有前缀strpos

http://php.net/manual/en/function.strpos.php

$dir    = 'propix';
$files  = scandir($dir);
$prefix = '1410';
foreach($files as $file) {

    if(strpos($prefix) !== FALSE) { //here you are supposed to add more...

        echo $file;
    }
}
于 2012-07-15T09:15:17.757 回答