我正在开发一个项目,允许用户搜索Flickr并从结果列表中选择某些图像,然后可以在图库中查看。我将写出我到目前为止创建的过程,并解释我被困在哪里。
索引页面只是一个搜索栏和一个提交按钮。
用户键入搜索字词,然后点击提交表单操作为action=flickrcall.php
flickrcall.php这样做:
<?php
require_once('flickr.php');
$Flickr = new Flickr;
$data = $Flickr->search($_POST["search"]);
foreach($data['photos']['photo'] as $photo) {
echo '<img class="large" onclick="select(this)" src="' . 'http://farm' . $photo["farm"] . '.static.flickr.com/' . $photo["server"] . '/' . $photo["id"] . '_' . $photo["secret"] . '.jpg">';
}
?>
这将生成一个图像结果列表,直到我指定的任何数字,现在它是10.然后结果是10个:
<img class="large" id="test" onclick="select(this)" src="flickr.img.url.jpg" />
我想要做的是用<img>
包裹第一个<a href="#img1"></a>
,然后用<img>
包裹第二个<a href="#img2"></a>
,依此类推。 (这样我以后可以在图像上使用CSS灯箱效果)
我认为这样做的方法是以某种方式创建一个变量(让我们称之为$hrefNumber
),它会计算出很多结果,并在上面的echo语句中使用这样的变量:
echo '<a href="#img' . $hrefNumber . '">
<img class="large" onclick="select(this)" src="' . 'http://farm' . $photo["farm"] . '.static.flickr.com/' . $photo["server"] . '/' . $photo["id"] . '_' . $photo["secret"] . '.jpg">'
</a>
;
问题是我现在知道如何创建这样的变量,也不知道在哪里声明/写它。
这有意义吗?听起来我是在正确的轨道上还是我离开了?
答案 0 :(得分:1)
$counter=0;
foreach($data['photos']['photo'] as $photo) {
$counter++;
echo '<a href=\'#img'.$counter.'\'><img class="large" onclick="select(this)" src="' . 'http://farm' . $photo["farm"] . '.static.flickr.com/' . $photo["server"] . '/' . $photo["id"] . '_' . $photo["secret"] . '.jpg"></a>';
}
或
foreach($data['photos']['photo'] as $counter => $photo) {
echo '<a href=\'#img'.$counter.'\'><img class="large" onclick="select(this)" src="' . 'http://farm' . $photo["farm"] . '.static.flickr.com/' . $photo["server"] . '/' . $photo["id"] . '_' . $photo["secret"] . '.jpg"></a>';
}