Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: невидимый Parse error

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
foozzi
Отправлено: 10 Сентября, 2011 - 23:57:57
Post Id



Посетитель


Покинул форум
Сообщений всего: 283
Дата рег-ции: Май 2011  
Откуда: rm -rf /


Помог: 0 раз(а)




Parse error: syntax error, unexpected T_IF in /opt/lampp/htdocs/xampp/comics/d ownload_count.php on line 15

НО ГДЕ??

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. //код файла req.php
  4.  
  5. define('URL_DIR','http://easytrolls.tk/comics/');
  6.  
  7. define('ABS_DIR',$_SERVER['DOCUMENT_ROOT']);
  8.  
  9. //Определяем нужные нам константы
  10.  
  11. $namefile = htmlspecialchars(str_replace("/","",$_GET['name'])); 
  12.  
  13. //Через гет передаем параметр-имя
  14.  
  15. if (!$namefile) echo 'Произошла ошибка! Файл с таким именем не найден.' ;
  16.  
  17. $array = array(); //массив данных
  18.  
  19. if(file_exists(ABS_DIR.'/base.txt'))
  20.  
  21. {
  22.  
  23.     $array = unserialize(file_get_contents(ABS_DIR.'/base.txt'));
  24.  
  25.     //Файл который будет содержать данные о кол-ве скачиваний
  26.  
  27.     //в виде сериализованного массива
  28.  
  29.     if(!$array[$namefile]) $array[$namefile] = 0;
  30.  
  31.     $schet = $array[$namefile]+1;
  32.  
  33.     //$array[$namefile] содержит кол-во скачиванй этого файла
  34.  
  35. }
  36.  
  37. else 
  38.  
  39. {
  40.  
  41.     $schet = 1;
  42.  
  43. }
  44.  
  45. $array[$namefile] = $schet;
  46.  
  47. //присваиваем новое значение элементу массива
  48.  
  49. $array = serialize($array);
  50.  
  51. //сериализуем данные
  52.  
  53. @file_put_contents(ABS_DIR.'/base.txt',$array);
  54.  
  55. //пишем в файл причем не проверяем 
  56.  
  57. //записалось или нет ибо скачивание 
  58.  
  59. //должно начаться независимо от этого 
  60.  
  61. header("Location: ".URL_DIR."$namefile");
  62.  
  63. //Переадресуем запрос на скачиваемый файл
  64.  
  65. ?>
  66.  

(Отредактировано автором: 11 Сентября, 2011 - 00:04:59)



-----
90% ошибок находятся в полуметре от монитора...
 
 Top
OrmaJever Модератор
Отправлено: 11 Сентября, 2011 - 01:08:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




если реально видимой ошибки нету значит это только BOM символы, нужно сохранить файл в кодировке без BOM


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
foozzi
Отправлено: 11 Сентября, 2011 - 12:25:36
Post Id



Посетитель


Покинул форум
Сообщений всего: 283
Дата рег-ции: Май 2011  
Откуда: rm -rf /


Помог: 0 раз(а)




у меня и так без BOM сохранено


-----
90% ошибок находятся в полуметре от монитора...
 
 Top
Kelly
Отправлено: 11 Сентября, 2011 - 12:27:40
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




попробуйте проверять наличие переменной через isset()
 
 Top
illy
Отправлено: 11 Сентября, 2011 - 12:29:30
Post Id



Участник


Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011  
Откуда: от верблюда)


Помог: 28 раз(а)




сохранил в блокноте
Скачать файл: dfg.php
Скачан раз: 82


-----
Всё гениальное - просто
И ещё проще, если ты - индиго
 
 Top
Champion Супермодератор
Отправлено: 11 Сентября, 2011 - 16:19:52
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




OrmaJever пишет:
значит это только BOM символы
Хм.... очень сомневаюсь, что php принял BOM за IF ))

А вообще
foozzi пишет:
in /opt/lampp/htdocs/xampp/comics/d ownload_count.php on line 15
foozzi пишет:
3. //код файла req.php
Мне кажется, что ошибку не видно потому что она в другом файле.
 
 Top
foozzi
Отправлено: 11 Сентября, 2011 - 18:33:03
Post Id



Посетитель


Покинул форум
Сообщений всего: 283
Дата рег-ции: Май 2011  
Откуда: rm -rf /


Помог: 0 раз(а)




illy блокнот там ваш маздаевский я не юзаю т.к. у меня нет винды и не было никогда, у меня среда для разработки BlueFish там чтоб сохранить в BOM надо галочки ставить.... которые у меня не стоят соответственно.

Champion там просто коменты забыл переименовать, трабла не в этом


-----
90% ошибок находятся в полуметре от монитора...
 
 Top
Champion Супермодератор
Отправлено: 11 Сентября, 2011 - 18:48:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




foozzi пишет:
блокнот там ваш маздаевский я не юзаю т.к. у меня нет винды и не было никогда
По-моему, фразы со словами маздаевский и крики типа "у меня нет винды и не было" выглядят просто глупо. Откуда такое стремление всем показать, что вы линуксоид?

foozzi пишет:
там просто коменты забыл переименовать, трабла не в этом
Ну ладно. Но в этом файле точно нет синтаксических ошибок.
 
 Top
LIME
Отправлено: 11 Сентября, 2011 - 18:52:11
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




возможно код копипастили и затесался непечатаемый символ?
у меня так было только с t_string
(Добавление)
вот я сейчас скопировал ваш код
ошибки нет
возможно затесался \r в конец строки както?

(Отредактировано автором: 11 Сентября, 2011 - 19:14:50)

 
 Top
OrmaJever Модератор
Отправлено: 11 Сентября, 2011 - 19:41:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Champion пишет:
Хм.... очень сомневаюсь, что php принял BOM за IF ))

выполни Подмигивание
PHP:
скопировать код в буфер обмена
  1. здесь BOM символ
  2. if(true) {}

Champion пишет:
Мне кажется, что ошибку не видно потому что она в другом файле.

Закатив глазки


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Champion Супермодератор
Отправлено: 11 Сентября, 2011 - 19:54:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




OrmaJever пишет:
выполни
Ого, и правда) Причем, если bom написать слитно перед ифом, то будет анекспектед фигурная скобка. А если после бома поставить пробел или энтер, то анекспектед иф. Интересно. Теперь я приобрел кусочек опыта. Нажму тебе юбилейную спасибку)
 
 Top
foozzi
Отправлено: 12 Сентября, 2011 - 00:12:50
Post Id



Посетитель


Покинул форум
Сообщений всего: 283
Дата рег-ции: Май 2011  
Откуда: rm -rf /


Помог: 0 раз(а)




Champion потому что я не считаю windows за операционную систему из-за ее ничтожности и меня немного раздражает когда меня посылают юзать софт данного производства
OrmaJever
LIME
за подсказки благодарю, проверю все отпишу

(Отредактировано автором: 12 Сентября, 2011 - 00:13:42)



-----
90% ошибок находятся в полуметре от монитора...
 
 Top
LIME
Отправлено: 12 Сентября, 2011 - 08:20:46
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




OrmaJever Champion скажите пжлст как можно вставить BOM в произвольное место?
 
 Top
illy
Отправлено: 12 Сентября, 2011 - 18:15:43
Post Id



Участник


Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011  
Откуда: от верблюда)


Помог: 28 раз(а)




LIME пишет:
скажите пжлст как можно вставить BOM в произвольное место?

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


-----
Всё гениальное - просто
И ещё проще, если ты - индиго
 
 Top
Champion Супермодератор
Отправлено: 12 Сентября, 2011 - 18:43:55
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




foozzi пишет:
потому что я не считаю windows за операционную систему из-за ее ничтожности
Это Ваше личное мнение, но большинство людей, обладающих таким мнением не обладают сколько-нибудь достаточной компетенцией, чтобы давать такие оценки, а просто размахивают языком во все стороны. У линуска есть преимущества, (у винды, кстати, тоже), но произнесенная Вами фраза дает возможность судить о вас как о некомпетентном балаболе.

LIME пишет:
hampion скажите пжлст как можно вставить BOM в произвольное место?
Лично я, чтоб проетистить пример OrmaJever, написал такую вещь.
Файл test.php (с BOM в начале)
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         $co = file_get_contents('/var/www/***/www/debug/test.php'); // считали файл с bom в начале
  3.         $bom = substr($co, 0,3); // вырезали bom
  4.         $php = "<?PHP
  5.         {$bom} if(true) echo'bzz';"; // сформировали код с bom в середине
  6.         file_put_contents('/var/www/***/www/debug/test1.php',$php);//записали в др файл
Теперь в test1.php - bom в середине кода
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB