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

Форум PHP

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

 

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

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

тема: Undefined offset (4 предупреждения -1, 1, 2, 3)

Сообщения:  [1-10]    [11-20]  [21-23] 

 
 автор: Санька   (15.11.2007 в 18:37)   письмо автору
 
   для: Санька   (15.11.2007 в 18:00)
 

Щетс, рано обрадывался, перехожу я по ссылки, а все данные выливаются в эту же страницу. Посмотрите оригинал моего кода и тот что я вставил, помогите поправить.

   
 
 автор: Санька   (15.11.2007 в 18:00)   письмо автору
 
   для: Temnovit   (15.11.2007 в 17:48)
 

А в этот файл только админ может записывать данные по этому не сломается :) помогите решить выше описаную проблему!

   
 
 автор: Санька   (15.11.2007 в 17:57)   письмо автору
 
   для: bronenos   (15.11.2007 в 17:37)
 

if($lines) ставить нельзя иначе если в файле будут данные они не будут выводится, а при
if(1)
else {echo 'текст';};
не работает почему то. Какие еще будут варианты?

   
 
 автор: Temnovit   (15.11.2007 в 17:48)   письмо автору
 
   для: Санька   (15.11.2007 в 17:14)
 

Кстати, перед добавлением записи в такой файл, обязательно проверьте, чтобы ниодна из строк введенных пользователем не содержала символа " | ". Иначе вся структура поломается.

   
 
 автор: bronenos   (15.11.2007 в 17:37)   письмо автору
 
   для: Санька   (15.11.2007 в 17:14)
 

if ($lines) {
    foreach($lines as $i=>$line) { 
        $dt=explode("|", $line); 
        echo '<a href="index?tid='.$i.'&id=' . rawurlencode(trim($dt[3])) . '">'.$dt[0].'</a>('.$dt[2].')<br/>'.$dt[1].'<br/>';   
    }
}
else {
  /* Если пусто */
}

   
 
 автор: Санька   (15.11.2007 в 17:14)   письмо автору
 
   для: Temnovit   (15.11.2007 в 16:59)
 

Красиво написано :)
Работает на ура предупреждений больше нет :) а как сделать чтоб когда файл пустой выводилось сообщение что разделы не созданы.

   
 
 автор: Temnovit   (15.11.2007 в 16:59)   письмо автору
 
   для: exp   (15.11.2007 в 15:44)
 

Массив удобнее было бы перебрать так:

<?php 
$datafile 
'test.txt'#добавил здесь 

/* 
    структура test.txt 

имя1|подпись1|цифра1|/adres1 
имя2|подпись2|цифра2|/adres2 
имя3|подпись3|цифра3|/adres3 
имя4|подпись4|цифра4|/adres4 
*/ 
if(1) {  // i   #поменял здесь if(!isset($_GET['id])) 
    
$add=""
    
// tiptop($add); #закомментировал здесь 
    
$lines=file($datafile);
    
    foreach(
$lines as $i=>$line) {
        
$dt=explode("|"$line);
        echo 
'<a href="index?tid='.$i.'&id=' rawurlencode(trim($dt[3])) . '">'.$dt[0].'</a>('.$dt[2].')<br/>'.$dt[1].'<br/>';  
    }

   
 
 автор: Санька   (15.11.2007 в 16:47)   письмо автору
 
   для: Санька   (15.11.2007 в 16:15)
 

Ведь как получается если этим переменным есть что выводить они выводят, а если нет то правильно выводят предупреждение что нечего выводить, а как сделать чтоб вслучае пустого файла, писало разделы не созданы?

   
 
 автор: Санька   (15.11.2007 в 16:15)   письмо автору
 
   для: exp   (15.11.2007 в 15:44)
 

Повторяет одно и тоже без перерыва с этими же предупреждениями. И на экран уже не выводится текст из файла.

   
 
 автор: exp   (15.11.2007 в 15:44)   письмо автору
 
   для: Санька   (15.11.2007 в 14:43)
 


<?php
$datafile 
'test.txt'#добавил здесь

/*
    структура test.txt

имя1|подпись1|цифра1|/adres1
имя2|подпись2|цифра2|/adres2
имя3|подпись3|цифра3|/adres3
имя4|подпись4|цифра4|/adres4
*/
if(1) {  // i   #поменял здесь if(!isset($_GET['id]))
    
$add="";
    
// tiptop($add); #закомментировал здесь
    
$lines=file($datafile);
    
$i=count($lines);
    
$u="0";
    do {
        
$i--;

        echo 
'<hr>' htmlspecialchars($lines[$i],3) . '<hr>';  // отладка 

        
$dt=explode("|"$lines[$i]);
        echo 
'<a href="index?tid='.$i.'&id=' rawurlencode(trim($dt[3])) . '">'.$dt[0].'</a>('.$dt[2].')<br/>'.$dt[1].'<br/>';
    }
    while(
$i>$u);
}
?>

   

Сообщения:  [1-10]    [11-20]  [21-23] 

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

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