Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: меню и подсчет объявлений

Сообщения:  [1-10]   [11-15] 

 
 автор: ronin   (19.09.2006 в 10:42)   письмо автору
 
   для: ronin   (18.09.2006 в 11:26)
 

Помогите! Help! Hilfe! Допоможить!

   
 
 автор: ronin   (18.09.2006 в 11:26)   письмо автору
 
   для: cheops   (18.09.2006 в 11:05)
 

Warning: Cannot use a scalar value as an array in
Warning: Invalid argument supplied for foreach() in

   
 
 автор: cheops   (18.09.2006 в 11:05)   письмо автору
 
   для: ronin   (18.09.2006 в 11:03)
 

Замените блок
<?
foreach($link as $name => $url)
{
  if (
strpos($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'], $url['link']) == true)
  {
    echo 
"<tr><td bgcolor='#cccccc' width='254' height='25' ><div class='9'>".$name."(".$url['total'].")</tr></td>";
  } else {
    echo 
"<tr><td bgcolor='#ffffff' width='254' height='25' ><a href=".$url['link']." target=_self><div class='8'>".$name."(".$url['total'].")</div></a></tr></td>";
  }
}
?>

на
<?
if(!empty($link))
foreach(
$link as $name => $url)
{
  if (
strpos($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'], $url['link']) == true)
  {
    echo 
"<tr><td bgcolor='#cccccc' width='254' height='25' ><div class='9'>".$name."(".$url['total'].")</tr></td>";
  } else {
    echo 
"<tr><td bgcolor='#ffffff' width='254' height='25' ><a href=".$url['link']." target=_self><div class='8'>".$name."(".$url['total'].")</div></a></tr></td>";
  }
}
?>

   
 
 автор: ronin   (18.09.2006 в 11:03)   письмо автору
 
   для: cheops   (15.09.2006 в 21:30)
 

не используется $link наверное тут где то ошибка:
<?php
include "configuration.php";
$query = ("SELECT id, name, rubrica, COUNT(*) AS total FROM books
WHERE rubrica= '".$_GET['rubrica']."' GROUP BY id DESC ") ;
$result = mysql_query($query);
if(!$result) exit("&#206;&#248;&#232;&#225;&#234;&#224;: ".mysql_error()); // ведь, привильно перед $result должен стоять"!"
if(mysql_num_rows($result) > 0)
{
while($books = mysql_fetch_array($result))
{
$link[$books['name']]['link'] = 'book.php?rubrica='.$books['rubrica'];
$link[$books['name']]['total'] = $books['total'];
}
}

echo "<table border=0 cellSpacing=0 cellPadding=0 color='#FFCC99' width='254'><tr>";
foreach($link as $name => $url){
if (strpos($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'], $url['link']) == true){
echo "<tr><td bgcolor='#cccccc' width='254' height='25' ><div class='9'>".$name."(".$url['total'].")</tr></td>";
} else {
echo "<tr><td bgcolor='#ffffff' width='254' height='25' ><a href=".$url['link']." target=_self><div class='8'>".$name."(".$url['total'].")</div></a></tr></td>";
}
}
echo "</table>";

$links = array( 'главная' => 'index.php',
'Позиция1' => 'book.php?rubrica=1',
'Позиция2' => 'book.php?rubrica=2',
Позиция3'=> 'book.php?rubrica=3',
Позиция4'=> 'book.php?rubrica=4',
Позиция5'=> 'book.php?rubrica=5'
);
?>
А так, выдает
Warning: Invalid argument supplied for foreach() in

foreach($link as $name => $url){

   
 
 автор: cheops   (15.09.2006 в 21:30)   письмо автору
 
   для: ronin   (15.09.2006 в 15:58)
 

Перед циклом добавьте строку
<?php
   $link 
= array();
?>

У вас переменная $link больше нигде не используется?

   
 
 автор: ronin   (15.09.2006 в 15:58)   письмо автору
 
   для: cheops   (15.09.2006 в 12:10)
 

У меня выдает ошибки:

Warning: Cannot use a scalar value as an array in

$link[$books['name']]['link'] = 'book.php?rubrica='.$books['rubrica'];

Warning: Invalid argument supplied for foreach() in

   
 
 автор: cheops   (15.09.2006 в 12:10)   письмо автору
 
   для: ronin   (15.09.2006 в 12:02)
 

Скрипт у вас должен выглядеть сейчас примерно так
<?php 
  
include "configuration.php"
  
$query = ("SELECT id, name, COUNT(*) AS total FROM books 
            WHERE rubrica= '"
.$_GET['rubrica']."' ORDER BY id DESC ") ; 
  
$result mysql_query($query); 
  if(
$result) exit("&#206;&#248;&#232;&#225;&#234;&#224;: ".mysql_error()); 
  if(
mysql_num_rows($result) > 0
  { 
    while(
$books mysql_fetch_array($result)) 
    { 
      
$link[$books['name']]['link'] = 'book.php?rubrica='.$books['rubrica']; 
      
$link[$books['name']]['total'] = $books['total']; 
    } 
  } 

  echo 
"<table  border=0 cellSpacing=0 cellPadding=0 color='#FFCC99' width='254'><tr>";  
  foreach(
$link as $name => $url){  
    if (
strpos($_SERVER['REQUEST_URI'], $url['link']) == true){  
        echo 
"<tr><td bgcolor='#cccccc' width='254' height='25' ><div class='9'>".$name."(".$url['total'].")</tr></td>";  
    } else {  
        echo 
"<tr><td bgcolor='#ffffff' width='254' height='25' ><a href=".$url['link']." target=_self><div class='8'>".$name."(".$url['total'].")</div></a></tr></td>";  
    }  
  }  
  echo 
"</table>";  
?> 

   
 
 автор: ronin   (15.09.2006 в 12:02)   письмо автору
 
   для: cheops   (14.09.2006 в 20:25)
 

Меню работает. Спасибо! Но как при этом проводить подсчет объявлений? Помогите, а то я уже все варианты пробую - замахался.

   
 
 автор: cheops   (14.09.2006 в 20:25)   письмо автору
 
   для: ronin   (14.09.2006 в 14:30)
 

Вместо $_SERVER['PHP_SELF'] используйте $_SERVER['REQUEST_URI'].

http://www.softtime.ru/info/articlephp.php?id_article=69

   
 
 автор: ronin   (14.09.2006 в 14:30)   письмо автору
 
   для: cheops   (14.09.2006 в 13:42)
 

В том то и дело, что у меня нет меню(Меню состоит из рубрик: Руководители, Секретари и т.п. с количеством объявлений ). Мне хотелось бы, чтобы меню присутстствовало на страницах вывода, и к примеру , если открыта страница "секретари", то в меню строчка "секретари" перестает быть гипрессылкой. имеется меню

<?php 
$links 
= array( 'главная' => 'index.php'
'Позиция1' => 'name1.php'
'Позиция1' => 'name2.php'
Позиция1'=> 'name3.php', 
Позиция1'
=> 'name4.php',  
Позиция1'=> 'name5.php', 
Позиция1'
=> 'name6.php'
); 
 
?> 


      echo "<table  border=0 cellSpacing=0 cellPadding=0 color='#FFCC99' width='254'><tr>"; 
    foreach($links as $name => $url){ 
        if (strpos($_SERVER['PHP_SELF'], $url) == true){ 
        echo "<tr><td bgcolor='#cccccc' width='254' height='25' ><div class='9'>".$name."</tr></td>"; 
        } else { 
        echo "<tr><td bgcolor='#ffffff' width='254' height='25' ><a href=".$url." target=_self><div class='8'>".$name."</div></a></tr></td>"; 
        } 
    } 
    echo "</table>"; 
?> 

но я не знаю как сделать вывод одного файла, к примеру book.php с разными показателями
book.php?isbn=1 book.php?isbn=2 и если ОТКРЫТО book.php?isbn=1 то в меню, которое присутствует на каждой book.php?isbn=n гиперссылка на book.php?isbn=1 - не работала (phpself)

   

Сообщения:  [1-10]   [11-15] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования