Задача скрипта заключается в том, чтобы избежать множественного дублирования однотипных кусков хтмл-а.
Есть 4 переменных $img1, $img2 и т.д. в переменных адрес к картинке.
for ($i=1; $i <= 4; $i++) {
echo '<td width="137" height="137" align="left" valign="top"><div class="img">';
if ($img1 == 'uploads/') {echo '<div class="nopict">No picture</div>';}
else print "<img src='".$img.$i."' width='127' height='127' />";
echo '</div></td>';
}
Проблема заключается в том, что $img не подставляется к $i и скрипт читает этот код как 1, 2,3, 4. Как подставить к $img переменную $i чтобы читалось как перечисление переменных и возможно ли это?
Спустя 5 минут, 40 секунд (2.07.2011 - 02:31) sebastjan написал(а):
if ($img1 == 'uploads/')
Что то вы намудрили, это что?
Читаю так, если $img1 равна строка(uploads/)
Что вы имели ввиду?
Спустя 1 минута, 15 секунд (2.07.2011 - 02:32) sebastjan написал(а):
Я так понял вы хотите проверить есть ли в директориии файл картинки!?
Тогда это не так делаеться.
Тогда это не так делаеться.
Спустя 5 минут, 52 секунды (2.07.2011 - 02:38) sebastjan написал(а):
и ещё как это формируете адрес картинки у вас что он должен заканчиваться
$i
перемеенной.Спустя 57 минут, 19 секунд (2.07.2011 - 03:35) gagger написал(а):
У меня в базе данных если путсая картинка то там просто uploads/, если есть что-то то соответственно - uploads/picture.jpg, т.е. я проверяю есть ли картинка.
У меня 4 переменных $img1, $img2, $img3, $img4, я хочу подставлять $i вместо цифер переменных чтобы из бд вытаскивать соответственные данные.
У меня 4 переменных $img1, $img2, $img3, $img4, я хочу подставлять $i вместо цифер переменных чтобы из бд вытаскивать соответственные данные.
Спустя 1 час, 30 минут, 16 секунд (2.07.2011 - 05:05) Invis1ble написал(а):
Цитата |
У меня 4 переменных $img1, $img2, $img3, $img4, я хочу подставлять $i вместо цифер переменных чтобы из бд вытаскивать соответственные данные. |
тогда ты неправильно делаешь. Надо примерно так:
$varName = 'img' . $i;
if ($$varName == 'uploads/')
echo '<div class="nopict">No picture</div>';
else
echo "<img src='".$$varName."' width='127' height='127' />";
А вообще это извращение. Почитай про массивы.
Спустя 1 час, 19 минут, 22 секунды (2.07.2011 - 06:25) DeeKeiD написал(а):
for ($i=1; $i <= 4; $i++)
{
echo '<td width="137" height="137" align="left" valign="top"><div class="img">';
if (empty($var))
{
echo '<div class="nopict">No picture</div>';
}
else
print "<img src='uploads/".$img.$i."' width='127' height='127' />";
echo '</div></td>';
}
Спустя 3 часа, 57 секунд (2.07.2011 - 09:26) quickxyan написал(а):
DeeKeiD
а что за вторая строчка у тебя в подписи?
fatal error: call to undefined function???
а что за вторая строчка у тебя в подписи?
fatal error: call to undefined function???
Спустя 7 минут, 8 секунд (2.07.2011 - 09:33) Invis1ble написал(а):
quickxyan
Цитата |
fatal error: call to undefined function??? |
да, это скопип**но из одного недавнего топика, в котором я челу сказал, чтоб он перевел ошибку на русский



Спустя 2 часа, 42 минуты, 59 секунд (2.07.2011 - 12:16) gagger написал(а):
Вчера мой мозг не соображал...переработал
$pictures = array ($img1, $img2, $img3, $img4);
foreach ($pictures as $pict) {
echo '<td width="137" height="137" align="left" valign="top"><div class="img">';
if ($pict == 'uploads/') {echo '<div class="nopict">No picture</div>';}
if ($pict == '') {echo '<div class="nopict">No picture</div>';}
else print "<img src='".$pict."' width='127' height='127' />";
echo '</div></td>';
}
Спустя 7 минут, 18 секунд (2.07.2011 - 12:23) Guest написал(а):
gagger
$pictures = array ($img1, $img2, $img3, $img4);
foreach ($pictures as $pict) {
echo '<td width="137" height="137" align="left" valign="top"><div class="img">';
if ($pict == 'uploads/' || $pict == '')
echo '<div class="nopict">No picture</div>';
else
echo "<img src='".$pict."' width='127' height='127' />";
echo '</div></td>';
}
Спустя 43 секунды (2.07.2011 - 12:24) Invis1ble написал(а):
Пост выше от меня
Спустя 3 минуты, 56 секунд (2.07.2011 - 12:28) gagger написал(а):
Ага. Спасибо за корректировку)