| |
|
|
| | Здравствуйте!
while($book = mysql_fetch_array($result55))
{
$link5[$book['name']]['link'] = "dom.php?id_product=".$book[id_product]."&id_catalog=".$book[id_catalog]."&doma_id=".$book[doma_id]."";
}
foreach($link5 as $name1 => $url)
{
if (strpos($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'], $url['link']) == true)
{
echo $name1;
} else {
echo "<a href=".$url['link'].">".$name1."</a>";
}
}
|
такой код в большинстве случаев работает корректно, но иногда он глючит, т.е. если в ссылке id_doma=140 то этот код прихватывает и нетолько id_doma=149, но и id_doma=14
Пример:
[url]
http://www.vadimtur.com.ua/dom.php?id_product=1&id_catalog=1&doma_id=149
[/url] | |
| |
|
|
| |
|
|
| |
для: vadimtur
(02.06.2008 в 18:59)
| | | А в БД ошибки быть не может?? | |
| |
|
|
| |
|
|
| |
для: SiM(R)
(03.06.2008 в 03:26)
| | | в каком смысле? | |
| |
|
|
| |
|
|
| |
для: vadimtur
(03.06.2008 в 10:03)
| | |
<?php
strpos($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'], $url['link'])
?>
|
Получается что функции strpos ищет вхождение подстроки в строку. Соответсвенно при поиске "doma_id=14" будет подходить и "doma_id=14" и "doma_id=140". Вхождение подстроки ведь есть.
PS: а в первом топике я имел в виду, вдруг в БД в поле doma_id вместо 14 расположен 149. Всякое ведь бывает ) | |
| |
|
|
| |
|
|
| |
для: SiM(R)
(03.06.2008 в 10:54)
| | | блин! А как решить сию проблему? | |
| |
|
|
| |
|
|
| |
для: vadimtur
(03.06.2008 в 11:32)
| | | Ну можно несколькими способами:
1) использовать только трехзначные doma_id )
2) впринципе можно поменять местам (если id_catalog не больше 10 ):
$link5[$book['name']]['link'] = "dom.php?id_product=".$book[id_product]."&doma_id=".$book[doma_id]."&id_catalog=".$book[id_catalog].""; // непонятно зачем в конце "" - ведь это ничего не дает, ничего не делает!
|
3) ну а можно так, чтобы ни от чего не зависело:
<?php
foreach($link5 as $name1 => $url)
{
if ($_SERVER['REQUEST_URI']=='/'.$url['link']) //сравниваем УРЛ, без домена
{
echo $name1;
} else {
echo "<a href=".$url['link'].">".$name1."</a>";
}
}
?>
|
| |
| |
|
|
| |
|
|
| |
для: SiM(R)
(03.06.2008 в 12:40)
| | | Большое спасибо за помощь!!!!
1) трехзначные нельзя - база набита данными 1-99;
2) если поменять местами то закладка не работает если прийти с другой страницы, но работает если клацать по закладкам;
3) 3 вариант - работает!
Спасибо! | |
| |
|
|