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 :: Что делаю нетак?

 PHP.SU

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


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

> Описание: Form в HTTP
Bulkin
Отправлено: 24 Февраля, 2009 - 23:31:32
Post Id


Новичок


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


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




Пишу первые строки на PHP, в прямом и переносном смысле.

Есть такой код:

<form method=POST>
Мужчины: <input type=text name="male"><br>
Женщины: <input type=text name="female"><br>
<input type=submit value="Результат"><br>
</form>

<?php
$res='string';
echo $res=$_POST['male'];
?>

Пишит что предпоследняя строка: Function name must be a string in ...

В чем я не прав?

(Отредактировано автором: 25 Февраля, 2009 - 00:00:55)

 
 Top
NebsteR
Отправлено: 25 Февраля, 2009 - 01:21:22
Post Id


Гость


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


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




строчку $res='string'; удалить)
(Добавление)
и еще, укажи в <form method=POST> куда именно данные пересылать
(Добавление)
к примеру вот:

<form method="post" action="xxx.php">

можно еще впаять яву для проверки правильности введения данных:
CODE (text):
скопировать код в буфер обмена
  1. <script type="text/javascript">//<![CDATA[
  2. function isAlphaNumeric(value)
  3. {
  4.   if (value.match(/^[а-яА-Яa-zA-Z0-9]/))
  5.     return true;
  6.   else
  7.     return false;
  8. }
  9. function checkform(f)
  10. {
  11.   if (f.male.value=="")
  12.   {
  13.     alert("Не заполнено поле Мужчины");
  14.     return false;
  15.   }
  16.   if (!isAlphaNumeric(f.male.value))
  17.   {
  18.     alert("Неверно заполнено поле Мужчины");
  19.     return false;
  20.   }
  21.   if (f.female.value=="")
  22.   {
  23.     alert("Не заполнено поле Женщины");
  24.     return false;
  25.   }
  26.   if (!isAlphaNumeric(f.female.value))
  27.   {
  28.     alert("Неверно заполнено поле Женщины");
  29.     return false;
  30.   }
  31.   return true;
  32. }
  33. //]]></script>
  34.  
  35. <form method=POST action="xxx.php">
  36. Мужчины: <input type=text name="male"><br>
  37. Женщины: <input type=text name="female"><br>
  38. <input type=submit value="Результат"><br>
  39. </form>


страница-приемник:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. echo $res=$_POST['male'];
  4. //бла бла прочая обработка))
  5. ?>
  6.  
 
 Top
Вездеход
Отправлено: 25 Февраля, 2009 - 08:00:30
Post Id



Частый посетитель


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


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




NebsteR, наговорили то что не нужно. а зачем?

Bulkin, у вас в коде ошибка.
не зачем писать вот это
Bulkin пишет:
<?php
$res='string';
?>

можно пустые кавычки оставить. хотя не обязательно.

далее тут -
Bulkin пишет:
<?php
echo $res=$_POST['male'];
?>

так нельзя писать. надо разделить на 2 строки.
Bulkin пишет:
<?php
$res=$_POST['male'];
echo $res;
?>


т.е вы сперва забиваете в переменную данные а потом выводите, а не как вы - выводите непонятно что =)

или же прям так -
Bulkin пишет:
<?php
echo $_POST['male'];
?>


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
Bulkin
Отправлено: 25 Февраля, 2009 - 09:47:58
Post Id


Новичок


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


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




Все! Не могу больше!
Уже все 42 способа испробывал, ничего не помогает.

Что за фигня такая - не понимаю.

В action добавил файл, в нем код:
<?php
$_POST['male']="";

$res=$_POST['male'];
echo $res;

?>

Вроде все правильно, но нифига не выводит. Уже и if(empty) проверял - ноль!
И выводил в основном коде переменную $res - нифига, ноль. Не передает форма в переменные ничего. Пробывал $_GET, та же ерунда - ноль.

В чем проблема? Может РНР 5.х.х слишком сырой, поставить надежный 4.1.х?
Третий день бьюсь с 10-тью строчками кода. Мозги уже кипят.

Поможете?
 
 Top
obi-wan
Отправлено: 25 Февраля, 2009 - 09:53:58
Post Id


Новичок


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


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




PHP:
скопировать код в буфер обмена
  1. $_POST['male']="";
  2.  
  3. $res=$_POST['male'];
  4. echo $res;

Это шутка, что ли? Спасибо, мы посмеялись.

Если вдруг ты серьезно, напиши вместо всего этого echo $_POST['male'], как тебе вездеход посоветовал, и будет тебе щастье.

(Отредактировано автором: 25 Февраля, 2009 - 09:55:48)

 
 Top
Bulkin
Отправлено: 25 Февраля, 2009 - 09:59:14
Post Id


Новичок


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


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




obi-wan:

Шутка говоришь?
Если этого не написать, то получаю вот это:
Notice: Undefined index: male in F:\Work\PHP\col.php on line 4

Я уже давно перестал шутить с кодом.
 
 Top
obi-wan
Отправлено: 25 Февраля, 2009 - 10:08:49
Post Id


Новичок


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


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




Приведи весь код еще раз, мы скажем что не так.
 
 Top
Bulkin
Отправлено: 25 Февраля, 2009 - 10:18:32
Post Id


Новичок


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


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




Основной код:

<html>

<head>
<title></title>
</head>

<body>

<?php
$res="";
?>

<form action="col.php" method=POST>
Мужчины: <input type=text name="male"><br>
Женщины: <input type=text name="female"><br>
<input type=submit value="Результат"><br>
</form>

<?php
echo $res;
?>

</body>

</html>

Код который в col.php:
<?php
$_POST['male']="";

$res=$_POST['male'];
echo $res;
?>

Результат работы: выводит форму ввода. Ввожу, нажимаю сабмит. Уходит на обработку col.php. И все, тишина. Белый экран, ничего не выводит, никуда не возвращается (а должен вроде бы в основной код вернуться). Скринкопи чистого экрана прилагать не буду. ;)
 
 Top
obi-wan
Отправлено: 25 Февраля, 2009 - 10:25:59
Post Id


Новичок


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


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




Сделай так:

Основной код:
PHP:
скопировать код в буфер обмена
  1.  
  2. <html>
  3. <head>
  4. <title></title>
  5. </head>
  6. <body>
  7. <form action="col.php" method=POST>
  8. Мужчины: <input type=text name="male"><br>
  9. Женщины: <input type=text name="female"><br>
  10. <input type=submit value="Результат"><br>
  11. </form>
  12. </body>
  13. </html>
  14.  


Код который в col.php:
PHP:
скопировать код в буфер обмена
  1.  
  2. <html>
  3. <head>
  4. <title></title>
  5. </head>
  6. <pre>
  7. <?PHP print_r($_POST) ?>
  8. </pre>
  9. </body>
  10. </html>
  11.  


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

твой код col.php все сам должен выводить, и никуда вернуться не должен.
 
 Top
Bulkin
Отправлено: 25 Февраля, 2009 - 10:30:14
Post Id


Новичок


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


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




Сделал как ты написал, т.е. просто скопировал код с форума в тело. Вот результат:
Array
(
)

Не ожидал такого увидеть, если честно.

У меня возникло подозрение что в php.ini неправильно прописаны условия.

(Отредактировано автором: 25 Февраля, 2009 - 10:40:02)

 
 Top
obi-wan
Отправлено: 25 Февраля, 2009 - 10:56:35
Post Id


Новичок


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


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




Напиши в col.php $GLOBALS вместо $_POST.

А ты данные-то вводишь в форму?
 
 Top
Bulkin
Отправлено: 25 Февраля, 2009 - 11:05:01
Post Id


Новичок


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


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




2. Данные конечно же ввожу. Цифры.
1. Переменная $GLOBALS дала на экран много инфо размером в 2-е страницы.
Что нас из того что вывело интересует? Сюда (в форум) это постить можно? Несмотря на объем в 2 листа?
 
 Top
obi-wan
Отправлено: 25 Февраля, 2009 - 11:12:35
Post Id


Новичок


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


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




Ну наверно можно. Надо же посмотреть, что у тебя там творится. Пость все.
 
 Top
Bulkin
Отправлено: 25 Февраля, 2009 - 11:23:46
Post Id


Новичок


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


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




PHP:
скопировать код в буфер обмена
  1.  
  2. (
  3.     [GLOBALS] => Array
  4.  *RECURSION*
  5.     [_ENV] => Array
  6.         (
  7.             [GATEWAY_INTERFACE] => CGI/1.1
  8.             [SERVER_NAME] => localhost
  9.             [SERVER_SOFTWARE] => Expert HTTP Server
  10.             [SERVER_PROTOCOL] => HTTP/1.1
  11.             [HTTP_ACCEPT] => */*
  12.             [HTTP_ACCEPT_CHARSET] =>
  13.             [HTTP_ACCEPT_ENCODING] => gzip, deflate
  14.             [HTTP_ACCEPT_LANGUAGE] => en
  15.             [HTTP_CONNECTION] => Keep-Alive
  16.             [HTTP_HOST] => localhost
  17.             [HTTP_REFERER] => http://localhost/
  18.             [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
  19.             [REMOTE_ADDR] => 127.0.0.1
  20.             [REMOTE_PORT] => 1088
  21.             [SERVER_PORT] => 80
  22.             [SERVER_SIGNATURE] => Expert HTTP Server at localhost Port 80
  23.             [DOCUMENT_ROOT] => f:/work/php
  24.             [REQUEST_METHOD] => POST
  25.             [QUERY_STRING] =>
  26.             [CONTENT_TYPE] => application/x-www-form-urlencoded
  27.             [CONTENT_LENGTH] => 17
  28.             [SCRIPT_FILENAME] => F:\Work\PHP\col.php
  29.             [PATH_TRANSLATED] => F:\Work\PHP\col.php
  30.             [SCRIPT_NAME] => /col.php
  31.             [REQUEST_URI] => /col.php
  32.             [SYSTEMROOT] => C:\WINDOWS
  33.             [WINDIR] => C:\WINDOWS
  34.             [REDIRECT_STATUS] => 0
  35.         )
  36.  
  37.     [HTTP_ENV_VARS] => Array
  38.         (
  39.             [GATEWAY_INTERFACE] => CGI/1.1
  40.             [SERVER_NAME] => localhost
  41.             [SERVER_SOFTWARE] => Expert HTTP Server
  42.             [SERVER_PROTOCOL] => HTTP/1.1
  43.             [HTTP_ACCEPT] => */*
  44.             [HTTP_ACCEPT_CHARSET] =>
  45.             [HTTP_ACCEPT_ENCODING] => gzip, deflate
  46.             [HTTP_ACCEPT_LANGUAGE] => en
  47.             [HTTP_CONNECTION] => Keep-Alive
  48.             [HTTP_HOST] => localhost
  49.             [HTTP_REFERER] => http://localhost/
  50.             [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
  51.             [REMOTE_ADDR] => 127.0.0.1
  52.             [REMOTE_PORT] => 1088
  53.             [SERVER_PORT] => 80
  54.             [SERVER_SIGNATURE] => Expert HTTP Server at localhost Port 80
  55.             [DOCUMENT_ROOT] => f:/work/php
  56.             [REQUEST_METHOD] => POST
  57.             [QUERY_STRING] =>
  58.             [CONTENT_TYPE] => application/x-www-form-urlencoded
  59.             [CONTENT_LENGTH] => 17
  60.             [SCRIPT_FILENAME] => F:\Work\PHP\col.php
  61.             [PATH_TRANSLATED] => F:\Work\PHP\col.php
  62.             [SCRIPT_NAME] => /col.php
  63.             [REQUEST_URI] => /col.php
  64.             [SYSTEMROOT] => C:\WINDOWS
  65.             [WINDIR] => C:\WINDOWS
  66.             [REDIRECT_STATUS] => 0
  67.         )
  68.  
  69.     [argv] => Array
  70.         (
  71.             [0] => F:\Work\PHP\col.php
  72.         )
  73.  
  74.     [argc] => 1
  75.     [_POST] => Array
  76.         (
  77.         )
  78.  
  79.     [HTTP_POST_VARS] => Array
  80.         (
  81.         )
  82.  
  83.     [_GET] => Array
  84.         (
  85.         )
  86.  
  87.     [HTTP_GET_VARS] => Array
  88.         (
  89.         )
  90.  
  91.     [_COOKIE] => Array
  92.         (
  93.         )
  94.  
  95.     [HTTP_COOKIE_VARS] => Array
  96.         (
  97.         )
  98.  
  99.     [_SERVER] => Array
  100.         (
  101.             [GATEWAY_INTERFACE] => CGI/1.1
  102.             [SERVER_NAME] => localhost
  103.             [SERVER_SOFTWARE] => Expert HTTP Server
  104.             [SERVER_PROTOCOL] => HTTP/1.1
  105.             [HTTP_ACCEPT] => */*
  106.             [HTTP_ACCEPT_CHARSET] =>
  107.             [HTTP_ACCEPT_ENCODING] => gzip, deflate
  108.             [HTTP_ACCEPT_LANGUAGE] => en
  109.             [HTTP_CONNECTION] => Keep-Alive
  110.             [HTTP_HOST] => localhost
  111.             [HTTP_REFERER] => http://localhost/
  112.             [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
  113.             [REMOTE_ADDR] => 127.0.0.1
  114.             [REMOTE_PORT] => 1088
  115.             [SERVER_PORT] => 80
  116.             [SERVER_SIGNATURE] => Expert HTTP Server at localhost Port 80
  117.             [DOCUMENT_ROOT] =>
  118.             [REQUEST_METHOD] => POST
  119.             [QUERY_STRING] =>
  120.             [CONTENT_TYPE] => application/x-www-form-urlencoded
  121.             [CONTENT_LENGTH] => 17
  122.             [SCRIPT_FILENAME] => F:\Work\PHP\col.php
  123.             [PATH_TRANSLATED] => F:\Work\PHP\col.php
  124.             [SCRIPT_NAME] => F:\Work\PHP\col.php
  125.             [REQUEST_URI] => /col.php
  126.             [SYSTEMROOT] => C:\WINDOWS
  127.             [WINDIR] => C:\WINDOWS
  128.             [REDIRECT_STATUS] => 0
  129.             [PHP_SELF] => F:\Work\PHP\col.php
  130.             [REQUEST_TIME] => 1235553807
  131.             [argv] => Array
  132.                 (
  133.                     [0] => F:\Work\PHP\col.php
  134.                 )
  135.  
  136.             [argc] => 1
  137.         )
  138.  
  139.     [HTTP_SERVER_VARS] => Array
  140.         (
  141.             [GATEWAY_INTERFACE] => CGI/1.1
  142.             [SERVER_NAME] => localhost
  143.             [SERVER_SOFTWARE] => Expert HTTP Server
  144.             [SERVER_PROTOCOL] => HTTP/1.1
  145.             [HTTP_ACCEPT] => */*
  146.             [HTTP_ACCEPT_CHARSET] =>
  147.             [HTTP_ACCEPT_ENCODING] => gzip, deflate
  148.             [HTTP_ACCEPT_LANGUAGE] => en
  149.             [HTTP_CONNECTION] => Keep-Alive
  150.             [HTTP_HOST] => localhost
  151.             [HTTP_REFERER] => http://localhost/
  152.             [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
  153.             [REMOTE_ADDR] => 127.0.0.1
  154.             [REMOTE_PORT] => 1088
  155.             [SERVER_PORT] => 80
  156.             [SERVER_SIGNATURE] => Expert HTTP Server at localhost Port 80
  157.             [DOCUMENT_ROOT] =>
  158.             [REQUEST_METHOD] => POST
  159.             [QUERY_STRING] =>
  160.             [CONTENT_TYPE] => application/x-www-form-urlencoded
  161.             [CONTENT_LENGTH] => 17
  162.             [SCRIPT_FILENAME] => F:\Work\PHP\col.php
  163.             [PATH_TRANSLATED] => F:\Work\PHP\col.php
  164.             [SCRIPT_NAME] => F:\Work\PHP\col.php
  165.             [REQUEST_URI] => /col.php
  166.             [SYSTEMROOT] => C:\WINDOWS
  167.             [WINDIR] => C:\WINDOWS
  168.             [REDIRECT_STATUS] => 0
  169.             [PHP_SELF] => F:\Work\PHP\col.php
  170.             [REQUEST_TIME] => 1235553807
  171.             [argv] => Array
  172.                 (
  173.                     [0] => F:\Work\PHP\col.php
  174.                 )
  175.  
  176.             [argc] => 1
  177.         )
  178.  
  179.     [_FILES] => Array
  180.         (
  181.         )
  182.  
  183.     [HTTP_POST_FILES] => Array
  184.         (
  185.         )
  186.  
  187.     [_REQUEST] => Array
  188.         (
  189.         )
  190.  
  191. )
  192.  
  193.  
  194.  
 
 Top
obi-wan
Отправлено: 25 Февраля, 2009 - 12:36:49
Post Id


Новичок


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


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




Интересно, почему у тебя переменные не хотят передаваться. хм.
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB