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

Форум PHP

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

 

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

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

тема: грабли с ссылкой
 
 автор: Тиль   (27.02.2006 в 10:05)   письмо автору
 
 

Есть ссылка
<a href="news/index.php?do=news">Новости</a>
в одной из ячеек таблицы есть меню со строчкой Новости, при нажатие на которую в другой должна появиться файл news/index.php.
В эту ячейку(куда должно вставляться) вставил код
<?php
if ($do == 'news')
{include ('news/index.php');} ?>
не работает, ругается на строчку if ($do == 'news').
Что делать?

   
 
 автор: Денис   (27.02.2006 в 11:22)   письмо автору
 
   для: Тиль   (27.02.2006 в 10:05)
 

Ну во-первых, наверное, потому что не знает, что такое $do :). Вам нужно как-то объяснить программе, что такое $do, а для этого написать $do = $_GET['do'];

   
 
 автор: Тиль   (27.02.2006 в 12:10)   письмо автору
 
   для: Денис   (27.02.2006 в 11:22)
 

а где конкретно написать $do = $_GET['do'];

   
 
 автор: ck   (27.02.2006 в 12:14)   письмо автору
 
   для: Тиль   (27.02.2006 в 12:10)
 

Где угодно - до использования переменной $do

   
 
 автор: Тиль   (27.02.2006 в 12:26)   письмо автору
 
   для: ck   (27.02.2006 в 12:14)
 

получился блок:
<?php
$do = $_GET['do'];--ругается на эту строчку пишет ошибку Notice: Undefined index: do in s:\home\test3.ru\www\index.php on line 108


if ($do == "news")
{include ('news\index.php');} ?>

   
 
 автор: midav   (27.02.2006 в 12:47)   письмо автору
 
   для: Тиль   (27.02.2006 в 10:05)
 


<a href="news/index.php?do=news">Новости</a>
<?php
if(isset($_GET['do'])) { $do=$_GET['do']; }

switch (
$do
    { 
        case 
'news'
include (
'news/index.php');
         break; 
           } 
?>

   
 
 автор: Тиль   (27.02.2006 в 12:52)   письмо автору
 
   для: midav   (27.02.2006 в 12:47)
 

на switch ($do) ругается

   
 
 автор: midav   (27.02.2006 в 13:01)   письмо автору
 
   для: Тиль   (27.02.2006 в 12:52)
 

Чего ему там не нравиться?

   
 
 автор: Тиль   (27.02.2006 в 13:03)   письмо автору
 
   для: midav   (27.02.2006 в 13:01)
 

ХЗ просто пишет что ошибка в этой строке.а ты тестировал скрипт?

   
 
 автор: midav   (27.02.2006 в 13:17)   письмо автору
 
   для: Тиль   (27.02.2006 в 13:03)
 

Ну пробуй так, а то не знаю чего он там ругается, да и в универ скоро ехать учиться надо :)

<?php
Error_Reporting
(E_ALL & ~E_NOTICE);
?>

<a href="index.php?do=news">Новости</a> 
<?php 
if(isset($_GET['do'])) { $do=$_GET['do']; } 

switch(
$do
    { 
        case 
'news':
include (
'news/index.php'); 
         break; 
           } 
?> 

   
 
 автор: Тиль   (27.02.2006 в 13:35)   письмо автору
 
   для: midav   (27.02.2006 в 13:17)
 

Теперь не ругается но новости выводит все равно на новой странице а не в ячеке в которой код пхп указан

   
 
 автор: elenaki   (27.02.2006 в 14:24)   письмо автору
 
   для: Тиль   (27.02.2006 в 13:35)
 

<a href="index.php?do=news" target=_self>Новости</a>

   
 
 автор: Тиль   (27.02.2006 в 14:32)   письмо автору
 
   для: elenaki   (27.02.2006 в 14:24)
 

тоже самое-выводится в новом окне

   
 
 автор: elenaki   (27.02.2006 в 14:49)   письмо автору
 
   для: Тиль   (27.02.2006 в 14:32)
 

а сама ссылка "Новости" - в каком файле? /news/index.php или в index.php?

   
 
 автор: Тиль   (27.02.2006 в 14:59)   письмо автору
 
   для: elenaki   (27.02.2006 в 14:49)
 

Скрипт неовостной находится в /news/index.php, он работает и после нажатия на сыллку новости открывается в новом окне а не на главной странице. Нужно чтобы этот скрипт открывался на главной странице сайта в ячейке таблицы.

   
 
 автор: midav   (27.02.2006 в 21:55)   письмо автору
 
   для: Тиль   (27.02.2006 в 14:59)
 

Как то неправильно ты реализуешь :) зачем в каждой директории свой index.php? лучше все нужные пхп файлы держать в одном месте, а в директориях хранить файлы с определенной информацией. Тогда не будет таких парок с выводом :))

   
 
 автор: Тиль   (28.02.2006 в 06:04)   письмо автору
 
   для: midav   (27.02.2006 в 21:55)
 

midav спасибо все работает.Только одна грабля все-таки осталась-когда нажимаешь на слово подробнее он скотина снова выдает в новом окне, де здесь править?

   
 
 автор: midav   (28.02.2006 в 10:53)   письмо автору
 
   для: Тиль   (28.02.2006 в 06:04)
 

напиши код чтоб понятней было проблема :)

   
 
 автор: Тиль   (28.02.2006 в 12:42)   письмо автору
 
   для: midav   (28.02.2006 в 10:53)
 

вот:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Новости</title>
<link rel="StyleSheet" type="text/css" href="news.css">
</head>
<?php
// Выставляем уровень обработки ошибок
Error_Reporting(E_ALL & ~E_NOTICE);

// Этот файл выводит первые $pnumber новостей
// Устанавлинваем соединение с базой данных
require_once("config.php");
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<p class="zagblock">НОВОСТИ</p>
<?php
// Выясняем общее количество новостей в базе данных, для того чтобы
// правильно отображать ссылки на последующие новости.
$tot = mysql_query("SELECT count(*) FROM news WHERE hide='show' AND putdate <= NOW()");
if ($tot)
{
$total = mysql_result($tot,0);
// Если в базе новостей меньше чем $pnumber
// выводим их без вывода ссылки "Все новости".
if($pnumber < $total) echo "<p class='linkblock'><a href=news/news.php class='linkblock'>Все новости</a>";
}
else puterror("Ошибка при обращении к блоку новостей");
// Запрашиваем все видимые новости, т.е. те, у которых в базе данных hide='show',
// если это поле будет равно 'hide', новость не будет отображаться на странице
$query = "SELECT * FROM news
WHERE hide='show' AND putdate <= NOW()
ORDER BY putdate DESC
LIMIT $pnumber";
$new = mysql_query($query);
if(!$new) puterror("Ошибка при обращении к блоку новостей");
if(mysql_num_rows($new) > 0)
{
while($news = mysql_fetch_array($new))
{
// Выводим заголовок новости
echo "<p class=newsblockzag><b>".$news['name']."</b></p>";
// Формируем анонс
// Переменная $numchar содержит примерное
// количество символов в анонсе
$pos = strpos(substr($news['body'],$numchar), " ");
// Если новость длинная, то выводим троеточие...
if(strlen($news['body'])>$numchar) $srttmpend = "...";
else $strtmpend = "";
// Выводим анонс
echo "<p class=newsblock>".substr($news['body'], 0, $numchar+$pos).$srttmpend;
echo "<br><a class=anewsblock href=news/news.php?id_news=".$news['id_news'].">
подробнее--вот на эту строчку когда нажимаешь он отображает в отдельном окне
</a></p>";
}
}
?>
<br><br>

   
 
 автор: midav   (01.03.2006 в 00:40)   письмо автору
 
   для: Тиль   (28.02.2006 в 12:42)
 

Попробуй ссылку сделать так

<a class=anewsblock href=/news/news.php?id_news=".$news['id_news'].">
или
<a class=anewsblock href=news.php?id_news=".$news['id_news'].">

:)

   
 
 автор: Тиль   (01.03.2006 в 06:16)   письмо автору
 
   для: midav   (01.03.2006 в 00:40)
 

фигня какая-то получается -первй вариант открывает в новом окне а второй не находит файл какой-то news.php который должен лежать в коррневой папке сервера.Ложу его туда а он открывает новости но где то слева, смещая нафиг всю мою правую часть(авторизацию, календарь и т.д.).Слуш, midav будь другом, давай кину тебе сайт с новостным движком глянешь, а то шеф уже загрыз:((((

   
 
 автор: midav   (01.03.2006 в 19:41)   письмо автору
 
   для: Тиль   (01.03.2006 в 06:16)
 

ок, давай скидывай на [url]midav20@mail.ru [/url]

   
 
 автор: Тиль   (02.03.2006 в 06:11)   письмо автору
 
   для: midav   (01.03.2006 в 19:41)
 

все!!!разобрался......спасибо!!!

   
 
 автор: kotyara   (27.02.2006 в 21:59)   письмо автору
 
   для: Тиль   (27.02.2006 в 10:05)
 

1fdsfd

   
Rambler's Top100
вверх

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