Написал тестовый скрипт для ознакомления с принципами ООП.
Необходимо вывести на печать данные из введенной сгенерированной формы.
Подскажите пожалуйста, как это сделать?
test.html:
HTML |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1251"> <title>Создаем и выводим описание</title> </head> <body> <form action="class.php"> <input type="submit" name="art_create" value="Создать статью" /> </form> </body> </html> |
PHP |
<? |
PHP |
class Article |
PHP |
$art = new Article(); |
Цитата (sergeiss @ 3.06.2009 - 09:57) |
Даже не вникая в суть скрипта, с ходу вопрос: почему $_GET["art_create"]), хотя должно быть $_POST["art_create"]), т.к. используется форма? |
Цитата |
зачем учить ооп под пхп4, если в 5 возможности ооп реализованы лучше? |
Цитата (Юрий Шу @ 3.06.2009 - 14:12) |
а разве это имеет значение в данном случае?? |
Цитата (sergeiss @ 3.06.2009 - 10:22) | ||
Ну... Этаааааааа... Я даже не знаю, что и сказать-то Ты после перехода по нажатию кнопки выведи содержимое массивов $_GET и $_POST. Тогда понятнее будет. И лучше остать четверку в покое. Она была - спасибо ей. Но лучше тратить силы на изучение более современной версии. Иначе ты потом потратишь много времени на переучивание. |
PHP |
print_r($_POST); |
HTML |
Array ( [art_create] => Создать статью ) |
Цитата (sergeiss @ 3.06.2009 - 12:57) |
Даже не вникая в суть скрипта, с ходу вопрос: почему $_GET["art_create"]), хотя должно быть $_POST["art_create"]), т.к. используется форма? |
Цитата (gooder @ 3.06.2009 - 15:41) | ||
а что, все формы только постом передают данные? |
PHP |
echo 'Автор : '.$obj->title.'<br>'; |
Цитата (sergeiss @ 3.06.2009 - 11:53) | ||||||
Может я и погорячился немного Просто привык, что из формы (мне лично) удобнее передавать ПОСТом, и для меня это некий "стандарт" уже стал. А обращение к элементам класса (вне самого класса, для публичных переменных - как в данном случае) идет в виде $obj->title, $obj->author и так далее. В том числе и к методам, ежели таковые имеются.
|
PHP |
if(isset($_GET["art_create"])){ |
Цитата |
Кстати, а что за учебник такой, по которому нельзя разобраться с такими простыми вещами? |
Цитата |
Можно предположить, что ты хочешь обработать это всё в class.php. |
Цитата |
проверка на showData проводится в случае, если прошла проверка на art_create. Это же что ж получается? Надо две формы засабмитить?)))) |
PHP |
function Article($t="Название отсутствует",$a="Автор отсутствует",$d="Описание отсутствует"){ |
HTML |
<?php echo "POSTs<br>"; foreach( $_POST as $k => $val ) { echo "POST[$k]=$val<br>"; } echo "POSTs ended<br>"; if( isset( $_POST['title']) ) echo 'Введен заголовок '.$_POST['title'].'<br>'; if( isset( $_POST['author']) ) echo 'Введен автор '.$_POST['author'].'<br>'; ?> <form action="" enctype="multipart/form-data" name="text_editor" method="post"> Заголовок <input name="title" type="text" size="50" <?php if( isset( $_POST['title']) ) echo $_POST['title'] ?> /> <br /> Автор <input name="author" type="text" size="50" <?php if( isset( $_POST['author']) ) echo $_POST['author'] ?> /> <br /> <input type="submit" name="save_info" value="Сохранить"> </form> |
Цитата |
Заголовок <input name="title" type="text" size="50" <?php if( isset( $_POST['title']) ) echo $_POST['title'] ?> /> <br /> |
Цитата (Юрий Шу @ 3.06.2009 - 17:24) |
Там наверное value забыли? |
PHP |
echo 'value="'.$_POST['title'].'"'; |
Цитата (Юрий Шу @ 4.06.2009 - 09:02) |
sergeiss, ну с этим-то все понятно. А если теперь вернуться к задачи и классам? |
PHP |
$title=isset( $_POST['title'] ) ? $_POST['title'] : ''; |
Цитата |
$obj->Article( $title, $author, "Нету нифига"); |
Цитата |
А что значит вот эта строка? |
Цитата (Юрий Шу @ 4.06.2009 - 09:30) | ||
А что значит вот эта строка? |
Цитата |
Это вызов написанной тобой же функции, для объекта $obj. |
PHP |
$obj->showArticle(); |
PHP |
$obj=new Article; |
PHP |
$obj=new Article( $title, $author, "Нету нифига"); |
PHP |
$obj->Article( $title, $author, "Нету нифига"); |
Цитата (sergeiss @ 3.06.2009 - 14:53) | ||||
Может я и погорячился немного Просто привык, что из формы (мне лично) удобнее передавать ПОСТом, и для меня это некий "стандарт" уже стал. |
Цитата (gooder @ 18.06.2009 - 15:33) |
и поиск тоже постом? |
Цитата (gooder @ 21.06.2009 - 18:30) |
sergeiss, поиск тут именно при том, что передавать постом в его случае — моветон |
Цитата |
sergeiss, поиск тут именно при том, что передавать постом в его случае — моветон |
Цитата (twin @ 22.06.2009 - 08:46) |
нельзя поделиться ссылкой. Впринципе да, не очень удобно... |