Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1267 • Страница 13 из 64<  1 ... 10  11  12  13  14  15  16 ... 64  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
virus
Смотрю PHP Inside 17 вышел, какую ты там статью писал?

Кстати, по журналу, про PHP6 интересно довольно.
Сильно про кеширование протоколом HTTP, сразу не осилил, буду перечитывать и разбиратся. Статейка на подготовленного программиста расчитана :)
Остальное пока не читал.



Партнер
 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
Не влезла :D так что рано или поздно выложу где нибудь ещё

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
virus писал(а):
Не влезла :D так что рано или поздно выложу где нибудь ещё
давай её сюды мне на мыло :) Я те его в PM кину :)


 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
_Psih писал(а):
Статейка на подготовленного программиста расчитана

Дело в том что 16-й номер раскритиковали (в том числе и я) сказав что там слишком много материала для начинающих, по этому в 17-м номере решили "повысить" уровень и не публиковать статьи расчитанные на новичков... (в том числе и мою статью)

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
virus писал(а):
_Psih писал(а):
Статейка на подготовленного программиста расчитана

Дело в том что 16-й номер раскритиковали (в том числе и я) сказав что там слишком много материала для начинающих, по этому в 17-м номере решили "повысить" уровень и не публиковать статьи расчитанные на новичков... (в том числе и мою статью)

До#$%лись называется :D
Хотя конечно это хорошо, хоть будет что почитать. Надо бы вообще разделить журнал на 2 части: "Новичку" и "Чтиво для бывалых" :)
А ты свою статью можешь легко усложнить и расширить. Могу постаратся помочь, думаю по часику каждый вечер у меня найдётся, пока не вылижим её :)


 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
_Psih писал(а):
Могу постаратся помочь

Тогда это уже будет не моя статья а наша :)
(так-же я не люблю нагружать людей не нужными им делами)
Добавлено спустя 30 секунд
_Psih писал(а):
До#$%лись называется

Именно так :)

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
virus писал(а):
_Psih писал(а):
Могу постаратся помочь

Тогда это уже будет не моя статья а наша :)
(так-же я не люблю нагружать людей не нужными им делами)

Ну раз предложил помочь, значит сам хочу :) Ну решать тебе самому :)


 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
Немного не понимаю как это относится к теме топика, но если
_Psih писал(а):
сам хочу

то почему бы и нет ? (не вижу причин)

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
Подобрал тут интересные линки:
PHP 5.1 vs PHP6 (dev) - http://phpinside.ru/?q=6vs5
Документы Excel без COM, кому нить пригодится, часто приходится с этим сталкиваться - http://phpinside.ru/?q=node/453
РОД Linux - дистрибутив основанный на веб-технологиях, Linux на PHP? Угу! (Ржу, до сих пор, но и любопытно тоже) - http://phpinside.ru/?q=node/448

Неплохое введение в PHP5, описывающее основные новинки - http://phpclub.ru/detail/article/intro_php5
Для тех, кто переходит с PHP4 на PHP5, что нового и что нужно знать - http://phpclub.ru/detail/article/php5_andi_book
Новое в ООП в PHP5, отличная статья-обзор с примерами, всем рекомендую - http://phpclub.ru/detail/article/crossing_php5
Эти три статьи советую прочитать всем, они дают очень хорошее представление о новинках, а так же как этим пользоваться. Если ещё заглянуть в мануал на php.net, то проблем у вас возникнуть вообще не должно :)

А теперь немного личного опыта о PHP5
Вот уже месяца 1.5 пишу на чистом PHP5, изучаю его возможности. Что могу сказать, если вы пишете код используя ООП, вам пора на него перебератся. Хотя и для приверженцев процедурного программирования тоже найдётся кое что полезное.
1). Exceptions... Думаете трудно? Как бы не так! Надо всего лишь попробовать на паре протых примеров. Удобно. ОЧЕНЬ! Я в классе по работе с базой данных полностью поменял систему дебагинга и ошибок, уменьшив кол-во кода строк на 100-150 (сам класс был всего строк 350, включая коменты) а то и больше. К тому же сам код стал более компактен и более простой. Весь дебаг ограничился одним местом, вместо того, что бы в каждую функцию пихать десятки проверок. А отлов ошибок происходит тоже в одном месте. Очень удобно. Ещё удобнее отлов исключений по типам класса :) Вообще сказка!
2). Новые библиотеки. А конкретно MySQLi. Догадайтесь что я сделал с ней :) Не догадались? Так я и думал. Сделал наследование! Да, вы не ослышались, унаследовал всю библиотеку и добавил в неё своих функций! Это меня избавило от написания в классе пары десятков методов и объектов! Экономия кода в 5-6 раз как минимум :) К тому же скорость тоже на высоте :) Самопальные классы так быстро работать не могут :P Да и новые возможности тоже весьма кстати. Ах, забыл, _очень_ легко добится кросплатформенности для баз данных, если использовать объектный синтаксис MySQLi, ведь названия методов не содержат приставку mysqli_, что в итоге позволяет спокойно реализовать для других баз данный такой же класс (правда уже PHP кодом, т.к. больше объектных библиотек к базам данных пока нету, а PDO доверия не внушает - его намудрили, перемудрили и вообще испортили хорошую затею, ИМХО).

Хорошая статья по MySQLi - http://phpclub.ru/detail/article/mysqli

Вопросы? Задавайте, постараюсь ответить :)


 

Member
Статус: Не в сети
Регистрация: 02.08.2005
Откуда: Казань
_Psih
Эх.. Я не спорю - в PHP5 гораздо больше возможностей сравнению с четвертым.. Вот только хостеры на него мигрировать похоже и не обираются.. Вот и приходится пока изучать возможности языка лишь на домашнем сервере.. Ибо устанавливать PHP5 как CGI-приложение как-то некавайно..
Мен еще очень понравилось, что можно теперь подключать к программе библиотеки по мере вызова их классов.. Это довольно просто реализуется, а польза великая..


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
Moduvator писал(а):
_Psih
Эх.. Я не спорю - в PHP5 гораздо больше возможностей сравнению с четвертым.. Вот только хостеры на него мигрировать похоже и не обираются.. Вот и приходится пока изучать возможности языка лишь на домашнем сервере.. Ибо устанавливать PHP5 как CGI-приложение как-то некавайно..
Мен еще очень понравилось, что можно теперь подключать к программе библиотеки по мере вызова их классов.. Это довольно просто реализуется, а польза великая..

Ну незнаю как у вас там, а довольно много хостингов у нас в Латвии поддерживают PHP5. Он намного быстрее, что снижает нагрузку на сервера, а им это выгодно :)


 

Member
Статус: Не в сети
Регистрация: 18.11.2002
Откуда: не вернуться
Нашёл ещё одно "чудо" техники, гостевуха http://www.scriptsez.net/index.php?acti ... 1086399301 (я с похмелуги и то лучше пишу)

Вот куда люди лезут, у русских есть хорошая поговорка "не умеешь, не берись" а тут очередные "профи"... (убил бы таких "писак")

_________________
Летели гуси-лебеди, а им навстречу - воробьи-пингвины и соловьи-страусы...


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
virus писал(а):
Нашёл ещё одно "чудо" техники, гостевуха http://www.scriptsez.net/index.php?acti ... 1086399301 (я с похмелуги и то лучше пишу)

Вот куда люди лезут, у русских есть хорошая поговорка "не умеешь, не берись" а тут очередные "профи"... (убил бы таких "писак")

Вот поэтому действительно толковые PHP программисты всёравно ценятся и имеют высокие зарплаты :)


 

Member
Статус: Не в сети
Регистрация: 05.01.2004
Откуда: Москва
Помогите!
Установил у себя сервер XAMPP, новую версию!

Запускаю свой старый проэкт (курсовая моя), все нормально!
Как только пытаюсь произвести действия с файлами, то происходит такая вот бяка!

Код:
Object not found!
The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.

If you think this is a server error, please contact the webmaster.

Error 404
localhost
05/19/06 18:49:07
Apache/2.2.0 (Win32) DAV/2 mod_ssl/2.2.0 OpenSSL/0.9.8a mod_autoindex_color PHP/5.1.2


Т.Е. когда я открывал страничку, данные из файла считывались в массив и если я вносил какие либо изменения, после нажатия кнопки файл удалается, создается заново и в него записывается обнавленная информация! Мне кажется проблеммы с удалением файла, а вы как думаете?
Чего делать?


 

Member
Статус: Не в сети
Регистрация: 05.01.2004
Откуда: Москва
Такс, с хреновиной наверху я разобрался! Но образовалась новая проблема!
У меня был установлен пакет XAMPP, потом я установил AppServ (пакеты включают в себя Апачь, Пхп, Мускуль и прочее, ну вы и сами знаете)... :)
Проблема в том, что эти в Мускуле не работает тип тпблиц InnoDB...
У меня есть БД, есть таблица Orders типа MyISAM, пишу:
Код:
alter table orders type=innodb;

Потом пишем:
Код:
show table status;

Ивыводится таблица со сведениями о дргих табличках, ти Orders так и остался MyISAM?
В чем прикол?


 

У меня вопрос по PHP.Есть форма с выпадающими списками и текстовыми полями, обработчик ошибок проверяет правильность заполнения и если всё ОК отсылает обратно к форме(с пом. include('http:...')) на следующее заполнение, если были ошибки, то опять-же include на форму с echo всех ошибок и...
вот САМ ВОПРОС: как в этой форме оставить заполненными текстовые поля(во втором случае), а не получить её назад пустую, дабы не перезабивать опять все поля руками.
Пробовал в html-тегах так : VALUE="<?echo $_SESSION['a']?>" работает, но при первом выводе формы конечно получаем в текстовое поле всё что в кавычках, да и в случае успешного заполнения тоже, что не есть гуд.
Только не советуйте яваскриптовский history go-1, как это можно реализовать на PHP?


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
BMR писал(а):
У меня вопрос по PHP.Есть форма с выпадающими списками и текстовыми полями, обработчик ошибок проверяет правильность заполнения и если всё ОК отсылает обратно к форме(с пом. include('http:...')) на следующее заполнение, если были ошибки, то опять-же include на форму с echo всех ошибок и...
вот САМ ВОПРОС: как в этой форме оставить заполненными текстовые поля(во втором случае), а не получить её назад пустую, дабы не перезабивать опять все поля руками.
Пробовал в html-тегах так : VALUE="<?echo $_SESSION['a']?>" работает, но при первом выводе формы конечно получаем в текстовое поле всё что в кавычках, да и в случае успешного заполнения тоже, что не есть гуд.
Только не советуйте яваскриптовский history go-1, как это можно реализовать на PHP?

Приведи пример, как у тебя данные искажаются, а то я, если честно, не понял в чём проблема...


 

Форма передаёт POST-ом данные скрипту-обработчику, в нём присваиваю элементы массива $_POST массиву $_SESSION, проверяю правилиность заполнения текстовых полей формы и если ОК то include('http://форма') - забиваю следующую порцию данных в эту форму, если ошибки то echo их всех в браузер и опять-же include('http://форма') ,но на этот раз хотелось бы уже наблюдать не чистую форму а с моими ошибочно введёнными данными в текст. полях.
Чтобы реализовать вышеуказанное я в самой форме делал так <INPUT TYPE="text" NAME="a" SIZE=40 MAXLENGTH=40 VALUE="<?echo $_SESSION['a']?>"> и при ошибочном заполнении полей получал назад от обработчика что хотел - толькочто введённые мной данные, НО когда форма выводится в браузер первый раз(до заполнения), параметр VALUE выводит мне в текст. поле: <?echo $_SESSION['a']?> , а хотелось бы пустое поле.
обработчик:
Код:
<?
if ($_SERVER['REQUEST_METHOD']=='POST'){
   session_name ('forma');
   session_start();
   foreach ($_POST as $key => $value){$_SESSION[$key]=$value;}
$err='';
if(!$_SESSION['performer']){$err='<font color=red>пустое поле "performer"</font><br>';}
if(!$_SESSION['release_name']){$err.='<font color=red>пустое поле "release_name"</font><br>';}
if(!$_SESSION['label']){$err.='<font color=red>пустое поле "label"</font><br>';}
if(!$_SESSION['year']){$err.='<font color=red>пустое поле "year"</font><br>';}
if(!preg_match("/^[0-9]{4}+$/", $_SESSION['year'])){
   $err.="<font color=red>год состоит из 4х цифр</font>";}
if ($err==''){
   foreach ($_POST as $key => $value)
   {echo ($_SESSION[$key]=$value);$_SESSION = array();}/*распечатка ok-results*/
   include('http://localhost/form.html');}
   else {
      echo "<center><font color=red><b>АШИПКА!</b><font><br>$err</center>";/*распечатка errors*/
       include('http://localhost/form.html');}
      exit;
      }else {exit;}
?>

кусок формы:
Код:
<td><INPUT TYPE="text" NAME="performer" SIZE=40 MAXLENGTH=40 VALUE="<?echo $_SESSION['performer']?>"></td><tr>
<td>release_name</td><td><INPUT TYPE=text NAME="release_name" SIZE=40 MAXLENGTH=40 VALUE="<?echo $_SESSION['release_name']?>"></td><tr>
<td>label</td><td><INPUT TYPE=text NAME="label" SIZE=40 MAXLENGTH=40 VALUE="<?echo $_SESSION['label']?>"></td><tr>
<td>year</td><td><INPUT TYPE=text NAME="year" SIZE=4 MAXLENGTH=4 VALUE="<?echo $_SESSION['year']?>"></td><tr>


 

Member
Статус: Не в сети
Регистрация: 28.03.2005
Откуда: Латвия, Рига
Ясно, сделай в форме так

Код:
<?=(empty($_SESSION['a'])) ? '' : $_SESSION['a']; ?>

и если форму заполняют первый раз, обнуляй $_SESSION принудительно, что бы там не оказался какой то мусор.
P.S. В том контексте, в котором ты $_SESSION присваиваешь данные через foreach, я бы на твоём месте сделал бы так:
Код:
$_SESSION = $_POST;

А если смотреть с точки зрения оптимальности и лаконичности кода, я бы сделал так:
Код:
<?php
if ($_SERVER['REQUEST_METHOD']=='POST'){
   session_name ('forma');
   session_start();
   $err='';
   foreach ($_POST as $key => $value)
   {
        if (empty($value)) $err .= '<font color=red>пустое поле "'.$key.'"</font><br>';
        $_SESSION[$key]=$value;
   }
   if(!preg_match("/^[0-9]{4}+$/", $_SESSION['year']))
       $err.="<font color=red>год состоит из 4х цифр</font>";
if (empty($err))
{
   $_SESSION = array();
   include('http://localhost/form.html');
}
else
{
    echo "<center><font color=red><b>АШИПКА!</b><font><br>$err</center>";/*распечатка errors*/
    include('http://localhost/form.html');
}
?>

Обрати внимание на стиль кода, а так же на то, как я юзаю некоторые функции и чем вообще отличается твой и мой скрипт (но делают они одно и тоже). Советую привыкать к такому, проверенно опытом :)


 

Конечно, твой код более грамотен и удобочитабелен, замечания принял к сведению, спасибо :up:
Насчёт $_SESSION = $_POST - не знал что с массивами можно так фамильярничать :D
И к основному:
$_SESSION я и раньше обнулял в самой форме, подстановка в тег твоего выражения
Код:
<INPUT TYPE="text" VALUE="<?=(empty($_SESSION['a'])) ? '' : $_SESSION['a']; ?>">

не спасла, VALUE продолжал рисовать содержимое кавычек при первом выводе.
Выкрутился я следующим образом(как мне показалось совершенно по-детски): теперь первоначально вызывается не форма а обработчик, в котором если не было POST-а, обнуляется $_SESSION и потом include форму.
Целый день сидел тупил как бы организовать проверку в самой форме(впервые ли она вызывается), так ничего и не придумал.
В любом случае большое СПАСИБО !
похоже так как я сделал и надо было делать в самом начале, пойду выпью йаду :insane:


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1267 • Страница 13 из 64<  1 ... 10  11  12  13  14  15  16 ... 64  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan