powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как использовать POST в запросе
17 сообщений из 17, страница 1 из 1
Как использовать POST в запросе
    #39414168
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте уважаемые!
Посмотрите пожалуйста, почему запрос не работает?
page1.php
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
<form method="POST" action="page1.php">

<select name="month"> 
		<option>01</option>
		<option>02</option>
		<option>03</option>
		<option>04</option>
		<option>05</option>
		<option>06</option>
		<option>07</option>
		<option>08</option>
		<option>09</option>
		<option>10</option>
		<option>11</option>
		<option>12</option>
		</select>

	<select name="year"> 
		<option>2017</option>
		<option>2018</option>
		<option>2019</option>
		</select>

<input type="submit" name="knopka" value="Открыть"/>

</form>

<?php
$month = $_POST['month'];
$year = $_POST['year'];
?>

<?php
$result=mysql_query('select Date, Names from Table1 where MONTH(Date) = $month AND YEAR(Date) = $year group by Date, Names;');?>


Когда в запросе в место $month ("03") и в место $year ("2017") набиру правильно показывает.
Если из списка выбираю запрос нечего не показывает.
Спасибо!
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414188
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Внимательнее относитесь к правилам языка. Любого.

1. Слово "вместо" пишется слитно в данном случае.
2. Кавычки не те. Так переменные в запрос не попадут. Подробнее в документации: http://php.net/manual/ru/language.types.string.php
3. В конце запроса ";" не нужна. Опять же, документация: http://php.net/manual/ru/function.mysql-query.php
4. В случае появления подобных проблем первым делом читайте внимательно запрос перед его выполнением:
Код: php
1.
2.
3.
$query = ... // тут собирается запрос
var_dump($query); // или print_r
$result = mysql_query($query);

Такие ошибки видны сразу.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414196
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Спасибо за советы!
Надо было заменить
Код: php
1.
$month на '.$Moh.' и $year на '.$year.'
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414253
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Одну проблему решил, наткнулся с другой:
Сейчас только после нажатии кнопки "Открыть" показывает запрос.
Но как мне сделать что бы при загрузки страници показал запрос.
Спасибо!
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414315
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как бы ещё догадаться, "чиво ви хочите" и что мешает реализовать желаемое... Я - пас. ХШ сегодня на профилактике, а штатный телепат - в долгосрочном отпуске.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414322
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Давайте без приколов.
Я вас спрашиваю как навичок.
Если не хотите ответить сразу скажите что НЕТ!
Надеюсь кроме вас еще есть кто ответить...
Если я всё знаю зачем тогда форум.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414330
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Abisma2008,

Что Вы спрашиваете?
Abisma2008как мне сделать что бы при загрузки страници показал запрос.Ответ более чем очевиден - показывать запрос при загрузке страницы. Такой ответ Вас устроит?
Нет?
Или, всё же, Вы пытались как-то (как именно?) сделать желаемое? Ну так покажите, как пытались - тогда и увидим, что мешает. Может быть, этот запрос живёт себе где-то внутри блока if(isset($_POST['knopka'])) {...} и никаким образом не выполняется без нажатия на "Открыть". А по логике, запросу из первого поста именно там и место. Ну да, тогда и незачем показывать запрос, который, мало того, что не работает, да ещё и не имеет исходных параметров. Или речь идёт о чём-то совсем другом?
Извините, отсюда не видно ни кода, ни страницы. А проблему Вы описать не удосужились, увы.


Abisma2008Давайте без приколов.
Я вас спрашиваю как навичок.Давайте. Формулируйте, пожалуйста, мысли так, чтобы и исходные данные и вопрос были понятны не только Вам. Надеюсь, в детстве Вас учили излагать мысли внятно.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414332
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle"чиво ви хочите"
По Вашему это нормально?
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414333
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нормально, это цитата. Потому в кавычках.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414336
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
<table>
	<?php while ($row=mysql_fetch_array($result)):?>
		<tr>
		<td><?php echo $row[0];?>
                <td><?php echo $row[1];?>
		 </tr>
	<?php endwhile;?>
</table>


Вот где запрос выводится!
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414339
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Abisma2008,

Здесь видно КАК выводится. А вот ГДЕ по отношению ко всему остальному - не видно.
И, да, по-прежнему, не понятно, что сделать то хотите.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414593
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Добрый день!
Вот полностью код на страницу:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
<html>
<head>
<title>
</title>
</head>
<body>
<form method="POST" action="page1.php">
	<select name="month"> 
		<option>01</option>
		<option>02</option>
		<option>03</option>
		<option>04</option>
		<option>05</option>
		<option>06</option>
		<option>07</option>
		<option>08</option>
		<option>09</option>
		<option>10</option>
		<option>11</option>
		<option>12</option>
		</select>
	<select name="year"> 
		<option>2017</option>
		<option>2018</option>
		<option>2019</option>
		</select>
	<input type="submit" name="knopka" value="Открыть"/>
</form>
<?php
$month = $_POST['month'];
$year = $_POST['year'];
?>
<?php
require "config.php"; // Подключаем базу!
$result=mysql_query('select Date, Names from Table1 
					where MONTH(Date) = '.$month.' 
					AND YEAR(Date) = '.$year.' 
					group by Date, Names;');
?>
<table>
	<?php while ($row=mysql_fetch_array($result)):?>
		<tr>
		<td><?php echo $row[0];?>
        <td><?php echo $row[1];?>
		</tr>
	<?php endwhile;?>
</table>
</body>
</html>


Постараюсь объяснить:
Когда страница page1.php открою в первый селект показывает "01", а в другом селекте показывает "2017".
Но таблицу не показывает вообше. после нажатия на кнопку (knopka) показывает таблицу.
Я хочу чтобы при загрузки page1.php сразу показал таблицу!
Надеюсь Вы меня поняли!
Спасибо!
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414638
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, теперь понятно. Задайте для $month и $year или для соответствующих переменных в POST значения по умолчанию.
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414646
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkleДа, теперь понятно.
Наконец то)))
vkleЗадайте для $month и $year или для соответствующих переменных в POST значения по умолчанию.
Можно по подробнее. (Если честно где задают значения по умолчанию не знаю(.)
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414651
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414728
Abisma2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle Тынц
Спасибо!
Вот как получился: (Может кому то пригодится)
Код: php
1.
2.
3.
4.
5.
6.
<?php
$month = $_POST['month'];
if ( $month == '' ) $month = date('m');
$year  = $_POST['year'];
if ( $year == '' ) $year = date('Y');
?>
...
Рейтинг: 0 / 0
Как использовать POST в запросе
    #39414766
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если закрыть глаза на ошибки (имею в виду те, что управляются display_errors и error_reporting) и, вероятно, на отсутствие проверок входных данных - тогда пойдёт.

Если не закрывать, тогда можно как-то так:
Код: php
1.
$month = (isset($_POST['month']) && preg_match('/^\d{2}$/', $_POST['month'])) ? $_POST['month'] : date('m');


Или примерно так:
Код: php
1.
2.
if(!isset($_POST['month']) || !preg_match('/^\d{2}$/', $_POST['month'])) $_POST['month'] = date('m');
$month = $_POST['month'];

Впрочем, в последнем случае вместо явно лишней переменной $month можно использовать $_POST['month'] непосредственно в сборке запроса.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как использовать POST в запросе
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]