Страница подтверждения не появляется после отправки формы

Я новичок в программировании и создал HTML-форму, которая собирает данные от клиентов, а затем сохраняет ее в базе данных (это работает). Только две части, за которыми я застрял, - это страница подтверждения, которая должна показывать страницу, в которой говорится спасибо но прямо сейчас он идет прямо на домашнюю страницу.

во-вторых, есть трекер-кодировщик в Facebook, который, похоже, не выполняется, я не знаю почему.

Пожалуйста, может кто-нибудь мне помочь?

Кодирование индексной страницы:

<title>University of Salford -</title>
 
 
 
 

 <!-- Add HTML 5 vaildation for older browser -->
  
  
 
 

 
 
 <div id="intro">Welcome to the University of Salford</div>
 <div>
 <ul>
 <li>We welcome over 3000 international students per year from over 100 countries.</li>
 <li>Our presence at MediaCityUK offers invaluable employability enhancing experience to our students across all disciplines.</li>
 <li>To find out what we can offer you, why not come along to meet us in your country over the coming months.</li>
 <li>Please fill in your details below to get more information about our courses and generous scholarship scheme.</li>
 </ul>
 </div>

 <form action="process.php" name="form" id="form">
 
 
 
 <select name="nationality">
 <option value="">Nationality</option>
 <option value="Emirati">Emirati</option>
 <option value="Ghanaian">Ghanaian</option>
 <option value="Indian">Indian</option>
 <option value="Iranian">Iranian</option>
 <option value="Malaysian">Malaysian</option>
 <option value="Nigerian">Nigerian</option>
 <option value="Omani">Omani</option>
 <option value="Pakistani">Pakistani</option>
 <option value="Saudi">Saudi</option>
 <option value="Sri Lankan">Sri Lankan</option>
 </select>
 
 <select name="areaCode" id="areaCode">
 <option value="">Area Code</option>
 <!--<option value="0044">+44 (UK)</option>-->
 <option value="00233">+233 (GH)</option>
 <option value="0091">+91 (IN)</option>
 <option value="0098">+98 (IR)</option>
 <option value="0060">+60 (MY)</option>
 <option value="00234">+234 (NG)</option>
 <option value="00968">+968 (OM)</option>
 <option value="0092">+92 (PK)</option>
 <option value="00966">+966 (SA)</option>
 <option value="0094">+94 (LK)</option>
 <option value="00971">+971 (AE)</option>
 </select>
 
 

 </form>

Кодирование страницы процесса

<!--?php
error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
ini_set('display_errors',1);

 //Start SMS API
 //STEP 1: Configure SMS text and then input bitly link for confirm.php
 require_once '../admin/lib/SmsApi/SmsApi.php';

 $sendSms = new SmsApi();

 $config = parse_ini_file("config/config.ini");

 $body="Free Msg: \nHi [NAME], thank you for your interest in Salford. Click the link for more details http://bit.ly/salfordman ";

 //End SMS API

 //Connect to the mysql Db $con = 
 //mysql_connect($config['host'], $config['username'], $config['password']);

 try{
 $con = new PDO('mysql:host='.$config['host'].";dbname=".$config['database'].";charset=utf8",$config['username'],$config['password']);
 } catch (PDOException $e){
 header("Location: confirm.php?success=false");
 exit;
 }

 $con--->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);



 //Select table to insert incoming data to. The tabel name is define in 
 //config.ini table = "{table}" mysql_select_db($config['database'],$con);

 //check if the any of the get Value have data otherwise show error

 foreach ($_GET as $value) {
 if($value==""){
 header("Location: confirm.php?success=false");
 exit;
 };

}
 //STEP 2: Perform Find/Replace or add in corresponding fields
 //User data fields from form in index file
 $firstName =$_GET['firstName'];
 $surname =$_GET['surname'];
 $dob =$_GET['dob'];
 $nationality =$_GET['nationality'];
 $email =$_GET['email'];
 $areaCode = $_GET['areaCode'];
 $mobile =$_GET['mobile'];

 //NEW MAIL VALIDATION NO NEED TO TOUCH!!!!!!! 
 if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
 header("Location: confirm.php?success=false");
 exit;
 }

 //build Mysql query 
 $preparedQuery = $con->prepare("INSERT INTO salford (firstName,surname,dob,nationality,email,areaCode,mobile)
 VALUES (:firstName,:surname,:dob,:nationality,:email,:areaCode,:mobile)");

 $result = $preparedQuery->execute(array(
 ':firstName' => $firstName,
 ':surname' => $surname,
 ':dob' => $dob,
 'nationality' => $nationality,
 ':email' => $email,
 'areaCode' => $areaCode,
 'mobile' => $mobile
 ));

 $con = null;

 if (!$result){

 //error page 
 header("Location: confirm.php?success=false&type=2");
 exit;
 }else{

 header("Location: http://educate.netmuk.com/salford/minisite");

 //Replace placeholder with dynamic text;
 $body = str_replace("[NAME]", $fullname, $body);

 //Check if leading 0 is present, for the area code
 if(preg_match("/^0/",$mobile)){
 $msisdn = preg_replace("/^0/", $areacode, $mobile); 
 }else{
 $msisdn =$areacode.$mobile;
 }

//build api sms query 
//below block commented by steve. switched to use iGate class
/*$urlQuery = "?body=".urlencode($body)."&msisdn=".$msisdn."&oadc=cccu";

$ch = curl_init();
 curl_setopt_array($ch, array(
 CURLOPT_URL => $config['smsApi'].$urlQuery,
 CURLOPT_RETURNTRANSFER=> TRUE 
));

curl_exec($ch);
curl_close($ch);*/ 




$sendSms->addMessage(
 array('msisdn'=> $msisdn,
 //Add content here
 ' message'=> $body
)); 

//Set Sender Here
 $sendSms->setSender('Salford')->send();


//$iGateService->sendSMS returns TRUE on success, but we do nothing with it here
 }
?>

Кодирование страницы подтверждения, на которой есть трекер Facebook, а также сообщение благодарности

<title>Salford</title>
 
 
 
 
 
 

 <!--?php if($_GET['success']=="true"):?-->
 <div id="intro">Submitted!</div> 
 <div>
 Thank you, we will be in touch shortly
 </div>

 <!--?php else:?-->
 <div>
 There was an error, Please try again in a few moments.
 </div>

 <!--?php endif;?-->

 
 <noscript><img height="1" width="1" alt="" style="display:none" src="https://www.facebook.com/offsite_event.php?id=6018025148480&amp;value=0&amp;currency=GBP" /></noscript>
1 ответ

У вас нет ссылки, куда нужно перенаправить после обработки всего кода (в разделе "Кодирование для страницы процесса"). У вас есть только перенаправление, если появляется ошибка. Итак, если все работает нормально, в конце файла должен быть код перенаправления следующим образом:

header("Location: confirm.php?success=true");

Итак, добавьте этот код прямо перед ?> На странице шествия!

licensed under cc by-sa 3.0 with attribution.