Есть обычная форма, на странице send_massages.php?id=63:
<form action="send_msg.php" method="post" enctype="text/plain">Послать Сообщение:<br>
<textarea name="massage" cols="100" rows="10"></textarea>
<br><input type="hidden" name="id" id="id">
<input type="submit" value="Отправить"></form>
И файл send_msg.php
<?php
include("bd.php");
$fields=array("massage", "id");
foreach($fields as $num=>$key){
if (isset($_POST[$key]) && $_POST[$key]!='') $$key = $_POST[$key];
}
echo $id;
$result = mysql_query("SELECT * FROM users WHERE id='$id'");
$myrow = mysql_fetch_array($result);
var_dump($_POST['id']);
$msg = mysql_query("SELECT * FROM private_mg WHERE id='$id'");
if (isset($massage) && ($id)){
$insert = mysql_query("INSERT INTO private_mg (id_massage,new_massage) VALUE ('$id','$massage')");
echo 'Сообщение успешно отправлено';
}
else exit ('Вы не ввели сообщение');
?>
Спустя 52 минуты, 36 секунд (31.05.2010 - 09:49) justIAM написал(а):
Какой то код странный .....
Что это за танцы с бубнами???:
Т.е. ты формируешь массив из 2-х строковых констант, а затем пробегаешь по нему????
И что Ты хочешь получить в строке "echo $id", он же не определён
У поля input есть ещё значение value, которое как раз и передаётся, оно у Тебя задано вообще??
Если хочешь получить id, не проще сделать просто??
![blink.gif](http://phpforum.ru/html/emoticons/blink.gif)
Что это за танцы с бубнами???:
$fields=array("massage", "id");
foreach($fields as $num=>$key){
if (isset($_POST[$key]) && $_POST[$key]!='') ---> $$ <--- key = $_POST[$key];
}
echo $id;
Т.е. ты формируешь массив из 2-х строковых констант, а затем пробегаешь по нему????
И что Ты хочешь получить в строке "echo $id", он же не определён
У поля input есть ещё значение value, которое как раз и передаётся, оно у Тебя задано вообще??
Если хочешь получить id, не проще сделать просто??
$id = isset($_POST['id'])?$_POST['id']:null;
Спустя 13 минут, 33 секунды (31.05.2010 - 10:02) gagger написал(а):
Ну вот вместо того что бы писать - $id = isset($_POST['id'])?$_POST['id']:null; я создаю массив, краткость и скорость.
Вот вопрос почему не определен? Страница где форма имеет id он по идее должен попадать в поле hiden и оттуда попдать в $_POST
Вот вопрос почему не определен? Страница где форма имеет id он по идее должен попадать в поле hiden и оттуда попдать в $_POST
Спустя 23 минуты, 49 секунд (31.05.2010 - 10:26) gagger написал(а):
Заменил код в форме ...
И всеравно id не передается...
<?php $id = $_GET['id'];?>
<div align="center"><form action="send_msg.php" method="post" enctype="text/plain">Послать Сообщение:<br>
<textarea name="massage" cols="100" rows="10"></textarea>
<br><input type="hidden" value="<?php echo $id; ?>" name="<?php echo $id; ?>" id="<?php echo $id; ?>">
<input type="submit" value="Отправить"></form></div>
И всеравно id не передается...
Спустя 51 минута, 32 секунды (31.05.2010 - 11:18) justIAM написал(а):
Цитата |
я создаю массив, краткость и скорость. |
Миль пардон,впервые такую интересную конструкцию вижу, век живи век учись
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
А waldicom всё правильно подсказал:
<input type="hidden" value="<?php echo $_GET['id'];?>" name="id" id="id">
Спустя 2 минуты, 9 секунд (31.05.2010 - 11:20) gagger написал(а):
justIAM
Помоему товарищ Валид, кроме знака вопрос, ничего не сказал... Попробовал как ты посоветовал -
Если посмотреть исходный код страницы
Помоему товарищ Валид, кроме знака вопрос, ничего не сказал... Попробовал как ты посоветовал -
<input type="hidden" value="<?php echo $_GET['id'];?>" name="id" id="id">не прокатывает.
Если посмотреть исходный код страницы
<input type="hidden" value="63" name="id" id="id">вроде бы все выдает...я уже вообще ничего не пойму.
Спустя 2 минуты, 13 секунд (31.05.2010 - 11:22) waldicom написал(а):
Цитата (gagger @ 31.05.2010 - 10:20) |
justIAM Помоему товарищ Валид, кроме знака вопрос, ничего не сказал... Попробовал как ты посоветовал - <input type="hidden" value="<?php echo $_GET['id'];?>" name="id" id="id">не прокатывает. |
Во-первых, пишем ники правильно, если не можем писать, используем copy-paste
Во-вторых, что может быть легче вывести весь массив $_GET и посмотреть, что там приходит
Спустя 9 минут, 5 секунд (31.05.2010 - 11:31) gagger написал(а):
waldicom
Прошу прощение, за не правильно написанный ник.
А где простите вы в обработчике $_GET увидели? Форма передает $_POST...
Я так и не понял, почему эта конструкция не работала. В результате после перезаписи формы она вдруг заработала, причем я НИЧЕГО не менял...
Спасибо всем кто помогал, приношу извинения за потраченное на меня время.
Прошу прощение, за не правильно написанный ник.
А где простите вы в обработчике $_GET увидели? Форма передает $_POST...
Я так и не понял, почему эта конструкция не работала. В результате после перезаписи формы она вдруг заработала, причем я НИЧЕГО не менял...
Спасибо всем кто помогал, приношу извинения за потраченное на меня время.