Автор Тема: Как из сценария запустить другой?  (Прочитано 8950 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« : 08 Февраля 2005, 15:11:21 »
Блин, никак понять не могу...:confused:
Ситуация следующая: при вводе данных в форму, запускается сценарий на РНР, который их обрабатывает, и в зависимости от результата запускает тот или иной ДРУГОЙ сценарий. При этом нужно завершить выполнение исходного.
if ()  {запуск first.php}
else  {запуск second.php}
?>
Как блин это сделать??? Не exec\'ом же...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как из сценария запустить другой?
« Ответ #1 : 08 Февраля 2005, 15:17:39 »
вообще-то, в пхп есть такая замечательная инструкция, как [p]include[/p]
только вот термин "запуск" к ней неприменим.
Другое дело, что "завершить выполнение исходного" по-другому не получится.

Впрочем, если ты скажешь конкретно, что ты делаешь, без терминов, в которых путаешься, мы подскажем точное решение

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #2 : 08 Февраля 2005, 15:30:33 »
RomikChef
if ( (strlen(trim($inp_mail))<6) or (strpos($inp_mail,"@")==false) or (strpos($inp_mail,".")==false) ) //
   {
   echo "Неправильно набран адрес электронной почты";
   }
elseif (strlen(trim($inp_text))<20)
   {
   echo "Вы не набрали текст заказа";
   }
else
   {
   Echo strlen(trim($inp_text));
   $message=   "   отправитель $inp_name  
         пишет следующее:
         $inp_text";

   $message=convert_cyr_string($message,"w","k");
   $subject=convert_cyr_string("Заказ","w","k");
   $from=convert_cyr_string($inp_name." <".$inp_mail.">","w","k");

   if (Mail("postmaster@neftegazdetal.ru",$subject,$message,$from)==1)
      {
      echo "Письма отправлены!!!";
      }
   else
      {
      echo "ОтпраBкA обломилась!!!";
      }
   }
?>
Вместо echo хотелось бы выводить нормальные странички с сообщением. А про завершение текущего сценария - так это чтоб предотвратить просмотр исходного кода, представленного выше. Надеюсь понятно объяснил...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как из сценария запустить другой?
« Ответ #3 : 08 Февраля 2005, 15:37:38 »
вместо каких echo?
echo "Вы не набрали текст заказа";
или вместо
echo "ОтпраBкA обломилась!!!";
?

Про просмотр исходного кода у тебя неверные сведения.
никакое завершение не требуется.
и исходный код нельзя просмотреть ни в каком случае.

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #4 : 08 Февраля 2005, 15:43:41 »
Про исходник ты прав - и правда нельзя.... :)))
Но вопрос остается в силе.
То есть я хотел вместо КАЖДОГО из echo вывести разную страничку. Ну типа чтобы сохранить стилевое оформление сайта...
Или вернуть пользователя обратно на страницу с формой, откуда пришли неверные данные....

Оффлайн Lutik

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 184
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.galiongroup.ru
Как из сценария запустить другой?
« Ответ #5 : 08 Февраля 2005, 16:01:40 »
Ну так что тебе мешает это сделать?
Сделай обработку формы в этом же фаиле и выводи ошибку которая вирнул скрипт или подтверждение что все ок.
Если форма обрабатывается в отдельном фаиле делай редирект на фаил с формой и возвращай ошибку скрипта!(header)
Разум когда-нибудь победит

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #6 : 08 Февраля 2005, 16:13:42 »
Че-то не работает редирект... может че не так делаю..?
после условия ставлю

header("http://www.neftegazdetal.ru/order.php");
exit;

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #7 : 08 Февраля 2005, 16:18:02 »
Блин, сам понял - забыл в хедер вставить Location:
Теперь все получилось.
Спасибо большое всем кто помогал.

Оффлайн Lutik

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 184
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.galiongroup.ru
Как из сценария запустить другой?
« Ответ #8 : 08 Февраля 2005, 16:18:25 »
Разум когда-нибудь победит

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #9 : 08 Февраля 2005, 16:30:14 »
Эхх, как так? Передаю данные об ошибке в форму и пытаюсь назначить полю inp_mail значение ошибки:
...order.php?inp_mail=wrong_adress
а в форме так и остается - там тэг

Посоветуйте, плз, как вместо фиксированного value="Ваш адрес электронной почты" вставить переданный параметр...

Оффлайн Lutik

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 184
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.galiongroup.ru
Как из сценария запустить другой?
« Ответ #10 : 08 Февраля 2005, 16:46:12 »

if($_GET[\'inp_mail\']){
$m="wrong_adress";
}
else $m="Ваш адрес электронной почты";
<input type="text" name="inp_mail" size="60" value=".$m.">
Разум когда-нибудь победит

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как из сценария запустить другой?
« Ответ #11 : 08 Февраля 2005, 17:28:05 »
вот фигни-то без меня понаписали.
Shocker
я тебя специально спросил, вместо какого эха тебе нужно вызывать скрипт.
Дело в том, что вместо первых надо инклюдить форму.
а вместо последних - делать таки редирект.

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

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #12 : 09 Февраля 2005, 08:34:05 »
RomikChef
Страничка с формой и есть PHP скрипт, только вот такая штука - сама форма создается командами HTML, т.е. находится внутри тэгов . Как внутри них указать кусок скрипта? Это где-то было, только я не смог найти...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как из сценария запустить другой?
« Ответ #13 : 09 Февраля 2005, 12:06:14 »
Shocker , не поверишь.

Оффлайн Shocker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://neftegazdetal.ru
Как из сценария запустить другой?
« Ответ #14 : 09 Февраля 2005, 13:23:27 »
RomikChef :) :) :)
Че-то я стормозил...
А почему строчка \';   ?>
работает, а
echo \'\';   ?>
нет?
         
            ?>

 

Sitemap 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