2015-03-23 5 views
0

Я работаю на форме, которая будет перенаправлять пользователя после ввода их почтовый индекс в текстовое поле для этого примера, когда они EnterПеренаправление на конкретную страницу, когда критерии встретил

11111 and 22222 they will redirected to google.com 
33333 and 44444 they will redirected to yahoo.com 
55555 and 66666 they will redirected to bing.com 

Вот мой redirect_form.php

<form method="post" id="#form" action="redirect_form.php" > 
     <input type='text' name="zip" id="zip" placeholder='Enter Your Zip Code'/>  
     <input type='submit' id='btn' name="submit" Value='Submit' /><br />    
    <?php 
     include "include/redirect.php"; 
    ?> 
    </form> 

И вот мой redirect.php

<?php 
if(isset($_POST['submit'])){ 
     //Fetching variables of the form which travels in URL 
     $zip = $_POST['zip']; 
      if($zip =='11111' || $zip =='22222') 
     {   
      //To redirect form on a particular page 
      header("Location:http://www.google.com"); 
     } 
      else if($zip =='33333' || $zip =='44444') 
     {   
      //To redirect form on a particular page 
      header("Location:http://www.yahoo.com"); 
     } 
     else if($zip =='55555' || $zip =='66666') 
     {   
      //To redirect form on a particular page 
      header("Location:http://bing.com"); 
     } 
     else{ 
      ?><span><?php echo "Please enter your Zip code.....!!!!!!!!!!!!";?></span> <?php 
     }  
    } 
?> 

Но после того, как я проверил свою форму, например, я ввожу 11111 это дает мне эту ошибку:

Warning: Cannot modify header information - headers already sent by (output started at /home2/mighty1/public_html/epic/redirect_form/redirect_form.php:12) in /home2/mighty1/public_html/epic/redirect_form/include/redirect.php on line 8 

Линия no.8 в redirect.php является header("Location:http://www.yahoo.com");

Может кто-нибудь мне помочь :)

Спасибо

ответ

1

Ваша форма переадресации возвращает содержимое, которое требует отправки заголовков. Вам необходимо изменить действие формы, которое будет включено/redirect.php, и удалить его из включенного.

+0

Спасибо, Burrito, но при попытке сделать это форма не будет работать вообще. Вот живой URL http://goo.gl/Qqxxvx – thund5000

+0

жаль, что я ответил на это без полного чтения, где был включен redirect.php. действие должно быть action = "include/redirect.php", поскольку файл php, с которым вы хотите взаимодействовать, находится в отдельной папке. Вы не должны отправлять сообщения в тот же файл в этом экземпляре, так как этот файл уже возвращает что-то в браузер (форма), а затем включает redirect.php Вы также можете перенести чек на $ _POST на самую верхнюю часть этой страницы а затем выйдите после перенаправления, чтобы убедиться, что он работает. – Burrito

+0

Ничего себе, спасибо Burrito. Сейчас он работает :) Твой мужчина – thund5000

Смежные вопросы