1

Тема: Вопрос по samphpweb

Когда люди заходят на страницу заказа песен и нажимаю на "Заказать" то их автоматом перекидывает на страницу где можно ввести имя и пожелание к примеру http://somedomain.su/req.php?songid=88036, песня сразу же ставится в очередь. Поля я сделал обязательными, но народ просёк, что можно просто нажать на кнопку и песня прозвучит.
Как сделать чтобы песня ставилась только после заполнения имени и сообщения ?

2

Re: Вопрос по samphpweb

банально if then else

3

Re: Вопрос по samphpweb

Не подскажешь как это сделать в этом скрипте?
1-ый скрипт который переводит на страницу заполнения и отправляет в очередь

<?
 require_once("config.php"); 
 require_once("common/xml.php");
 
 if(empty($requestid))
   require_once("req/req.php");
 else
   require_once("req/req.dedication.php");
?>

2-ой который обрабатывает полученные данные из dedication.form.html

<?
 $data = Array();
 $data["msg"] = "$rmessage";
 $data["name"] = "$rname";
 
 $db = new DBTable();
 $db->connect($samlogin);
 $db->update("requestlist",$data,"(ID = $requestid)");
 
 $db->open("SELECT * FROM songlist WHERE (ID = $songid)");
 $song = $db->row();
 $song["requestid"] = $requestid;
 PrepareSong($song);
 $dedicated = true;
 
 require("req.success.html");
?>

Отредактировано LAZ2735 (22-08-2011 19:32:14)

4

Re: Вопрос по samphpweb

лучше сделать через javascript чтоб просто не отправляло пока не заполнены все поля

а в пхп
на подобие такого
$data = Array();
$data["msg"] = "$rmessage";
$data["name"] = "$rname";

if(!isset($data["name"]) or  $data["name"]  ==''){
require("страница заказа");
}else{
$db = new DBTable();
$db->connect($samlogin);
$db->update("requestlist",$data,"(ID = $requestid)");

$db->open("SELECT * FROM songlist WHERE (ID = $songid)");
$song = $db->row();
$song["requestid"] = $requestid;
PrepareSong($song);
$dedicated = true;

require("req.success.html");
}

5

Re: Вопрос по samphpweb

Так смысл в том что когда переходит по ссылке заказа получается что он выводит на страницу заполнения и одновременно  require_once("req/req.dedication.php"); который и ставит трек в очередь.
Вот мне и надо чтобы сначало он выдавал страницу заказа, а после нажатия на ней заказать уже ставил в очередь

6

Re: Вопрос по samphpweb

я не помню всей иерархии заказа в phpmyadmin
но суть я выложил, а дальше колдуйте )

возьмите ту страницу, где оформляеться заказ, и смотрите куда обращаеться форма, и уже там ставьте проверку.
но я рекомендую поставить проверку на javascript еще в семой форме заказа (onsubmit ="return check_function(); " где check_function() скрипт проверяющий поля на заполненость)

7

Re: Вопрос по samphpweb

Суть то я понял, но поля я сделал чтобы обязательными были.

Смысл в том что когда нажимаю заказать происходит два действия одновременно это:
1.Выводится форма
2.Ставится в очередь

8

Re: Вопрос по samphpweb

тогда еще раньше )
поставьте на сайте регистрацию, при нажатии будет сразу браться инфа из кукисов, или запрашивать имя при переходе на страницу заказов и тд и тп

9

Re: Вопрос по samphpweb

спс, суть понял