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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: создание сылок
 
 автор: Sajmon   (09.09.2008 в 11:21)   письмо автору
 
 

день добрый!
проблема заключается в следующем
Я только начинаю и решил разобратся с оператором for написал скрипт но он выводит не то на что я расчитывал. Помогите найти ошибку!
 <?php

$menu_string
="Новости~статьи~Контакиы";
$menu=explode("~"$menu_string);
for (
$i=0$i count($menu); $i++)
{
    echo 
"<a href =index-",$i+1,".php>",$menu[$i],"</a><br>";
}; 


по идее он должен вывести мне такое:

Новости=index-1.php
статьи=index-2.php
Контакиы=index-3.php

А он выводит такое:

Новости
статьи
Контакты

Я думаю ошибка гдето здесь. Помогите Разобратся

echo "<a href =index-",$i+1,".php>",$menu[$i],"</a><br>";

  Ответить  
 
 автор: sim5   (09.09.2008 в 11:25)   письмо автору
 
   для: Sajmon   (09.09.2008 в 11:21)
 

<?
echo "<a href=\"index-" $i+".php\">" $menu[$i] . "</a><br>";

  Ответить  
 
 автор: Sajmon   (09.09.2008 в 11:48)   письмо автору
 
   для: sim5   (09.09.2008 в 11:25)
 

если сделать так как вы советуете то получается немного не то

echo "<a href=\"index-" . $i+1 . ".php\">" . $menu[$i] . "</a><br>";

Выводит

1.php">Новости
1.php">статьи
1.php">Контакты

должно быть :

Новости=index-1.php
статьи=index-2.php
Контакты=index-3.php

  Ответить  
 
 автор: sim5   (09.09.2008 в 11:51)   письмо автору
 
   для: Sajmon   (09.09.2008 в 11:48)
 

Только дуру не надо городить, А !? Почитайте для начала в HTML документации, что такое ссылка.
Должно быть так в итоге, например:
<a href="index-1.php">Новости</a>
И ниКАК иначе!

  Ответить  
 
 автор: Trianon   (09.09.2008 в 11:33)   письмо автору
 
   для: Sajmon   (09.09.2008 в 11:21)
 

пробел после href - зачем стоит?

  Ответить  
 
 автор: Sajmon   (09.09.2008 в 11:41)   письмо автору
 
   для: Trianon   (09.09.2008 в 11:33)
 

я исправил на такое

echo "<a href='index-'",$i+1,".php>",$menu[$i],"</a><br>";

Всеравно лажа не работает

  Ответить  
 
 автор: sim5   (09.09.2008 в 11:44)   письмо автору
 
   для: Sajmon   (09.09.2008 в 11:41)
 

Вы долго еще будете вместо точки запятую пихать? Я ведь вам написал как правильно "склеить" строки.

  Ответить  
 
 автор: Sajmon   (09.09.2008 в 11:50)   письмо автору
 
   для: sim5   (09.09.2008 в 11:44)
 

если сделать так как вы советуете то получается немного не то

echo "<a href=\"index-" . $i+1 . ".php\">" . $menu[$i] . "</a><br>"; 


Выводит

1.php">Новости 
1.php">статьи 
1.php">Контакты 


а должно быть :
Новости=index-1.php 
статьи=index-2.php 
Контакты=index-3.php

  Ответить  
 
 автор: alex21   (09.09.2008 в 12:26)   письмо автору
 
   для: Sajmon   (09.09.2008 в 11:50)
 

Вот так
echo "<a href =index-".($i+1).".php>".$menu[$i]."=index-".($i+1).".php</a><br>";

  Ответить  
 
 автор: Лена   (09.09.2008 в 12:30)   письмо автору
 
   для: alex21   (09.09.2008 в 12:26)
 

Не пишите бред. Это простой пример.

<?php
$menu_string
="Новости~статьи~Контакиы";
$menu=explode("~"$menu_string);
for (
$i=0$i count($menu); $i++){
    echo 
"<a href=\"index-" $i ".php\">" $menu[$i] . "</a><br>";
}
?>


Совет автору поста: ОБЯЗАТЕЛЬНО нужно слушать людей, которые помогали вам в начале поста

  Ответить  
 
 автор: alex21   (09.09.2008 в 13:38)   письмо автору
 
   для: Лена   (09.09.2008 в 12:30)
 

Вы сначала разберитесь чего хочет человек, а потом делаете выводы

  Ответить  
 
 автор: Sajmon   (09.09.2008 в 12:42)   письмо автору
 
   для: alex21   (09.09.2008 в 12:26)
 

все работает !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Коль помогли вы мне в этом то будьте добры растолковать мне зачем нужно ставить ";" после скобок в теле фуекции for, то в разной литературе я встречал по разному кто ставит а кто нет


<?php

$menu_string
="&#205;&#238;&#226;&#238;&#241;&#242;&#232;~&#241;&#242;&#224;&#242;&#252;&#232;~&#202;&#238;&#237;&#242;&#224;&#234;&#242;&#251;";
$menu=explode("~"$menu_string);
for (
$i=0$i count($menu); $i++)
{
    echo 
"<a href =index-".($i+1).".php>".$menu[$i]."=index-".($i+1).".php</a><br>";
}; <----------------------------------------------

  Ответить  
 
 автор: alex21   (09.09.2008 в 13:41)   письмо автору
 
   для: Sajmon   (09.09.2008 в 12:42)
 

я всегда проверяю правильность написания функций на php.net

  Ответить  
Rambler's Top100
вверх

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