Как я могу передавать переменные по страницам со страницы регистрации моего пользователя?

1

Я хочу передать переменную "region_name" с моей страницы регистрации пользователя (signin_up.php) через мою страницу подтверждения (confirm_validation.php) и, наконец, на мою региональную главную страницу (region_head_page.php), где я могу сделать запрос из моей базы данных ссылаясь на переменную (region_name). Это мои коды для соответствующих страниц:

signin_up.php

        <form id="form1" name="form1" class="form-signin"   method='post' action="confirm_validation.php">

          <div class="">
            <label for="inputFirstName" class="sr-only">First Name</label>
            <input name="fname"  type="name" id="inputfname"  class="form-control" placeholder="First Name" required autofocus>
         </div>
           <div class="">
            <label for="inputMiddleName" class="sr-only">Middle Name</label>
            <input name="mname" type="name" id="inputmname" class="form-control" placeholder="Middle Name">
          </div>
          <div class="">
            <label for="inputLastName" class="sr-only">Last Name</label>
            <input name="lname" type="name" id="inputname" class="form-control" placeholder="Last Name" required>
          </div>
          <div class="">
            <label for="inputDistrict" class="sr-only">District</label>
            <input name="district_name" type="name" id="inputdistrict" class="form-control" placeholder="District" required>
          </div>
 <div class="">
            <label for="inputEmail" class="sr-only">Email</label>
            <input name="eemail" type="email" id="inputEmail" class="form-control" placeholder="Email" required>
          </div>
   <div class="">
    <select name="access_level"  class="form-control" placeholder="Position"  id="access_level" required>
      <option>Please Select your Position</option>
      <option value="regional_head">Regional Head</option>
      <option value="general_user">General User</option>
    </select>
   </div> 
       <div class="">
           <select name="region_name"  class="form-control" placeholder="Region"  id="region_name" required>
               <option>Please Select your Region</option>
               <option>Greater Accra Region</option>
               <option>Eastern Region</option>
               <option>Western Region</option>
               <option>Central Region</option>
               <option>Ashanti Region</option>
               <option>Volta Region</option>
               <option>Brong Ahafo Region</option>
               <option>Northern Region</option>
               <option>Upper West Region</option>
               <option>Upper East Region</option>
   </select>
  </div>
          <div class="">
            <label for="pwd" class="sr-only">Password</label>
            <input name="district_pass" type="password" id="pwd" class="form-control" placeholder="Password" >
            </div>
    <div class="">
            <button  name="signup" class="btn btn-primary btn-lg" type="submit" >Submit</button>
          </div

confirm_validation.php

 ob_start();
 session_start();
 if(isset($_POST['signup'])){

 $con=mysqli_connect("localhost","root","myspace4199","car_sales");
 // Check connection
 if (mysqli_connect_errno()) {echo "Failed to connect to MySQL: " . mysqli_connect_error();}

 $user_signup = "user_signup";

 $fname = mysqli_real_escape_string($con, $_POST['fname']);
 $mname = mysqli_real_escape_string($con, $_POST['mname']);
 $lname = mysqli_real_escape_string($con, $_POST['lname']);
 $district_name = mysqli_real_escape_string($con, $_POST['district_name']);
 $eemail = mysqli_real_escape_string($con, $_POST['eemail']);
 $access_level= mysqli_real_escape_string($con, $_POST['access_level']);
 $region_name = mysqli_real_escape_string($con, $_POST['region_name']);
 $district_pass = mysqli_real_escape_string($con, $_POST['district_pass']);

        //If user is a regional head
        if($access_level == 'regional_head'){
            $sql="INSERT INTO user_signup (eemail,mobile_number,fname,mname,lname,access_level,district_name,district_pass) VALUES ('$eemail','$mobile_number','$fname','$mname','$lname','$access_level','$district_name','$district_pass')";
            $_SESSION['eemail'] = $eemail; 
            header('Location: regional_head_page.php');
        }
        else if ($access_level == 'car_company'){
                            $sql="INSERT INTO user_signup (eemail,mobile_number,fname,mname,lname,access_level,district_name,district_pass) VALUES ('$eemail','$mobile_number','$fname','$mname','$lname','$access_level','$district_name','$district_pass')";
                            $_SESSION['eemail'] = $eemail;
                            header('Location: car_company_page.php');
        }

  if (!mysqli_query($con,$sql)) {
  die('Error: ' . mysqli_error($con));
  }

 echo "";

 mysqli_close($con);
 }
 ?>

regional_head_page.php

 <?php
 $con=mysqli_connect("localhost","root","myspace4199","car_sales");
 // Check connection
 if (mysqli_connect_errno()) {echo "Failed to connect to MySQL: " . mysqli_connect_error();}

 $region_name = mysqli_real_escape_string($con, $_POST['region_name']);

 $sql="SELECT * FROM general_reservation WHERE region_name = '$region_name'";

 $records=mysqli_query($con,$sql);


 ?>
  • 0
    Вы можете использовать сессию
  • 0
    не видя ваш код ..... Passing a variable across the pages .... используйте SESSION, для этого они и созданы
Показать ещё 1 комментарий
Теги:

3 ответа

1
Лучший ответ

Вы использовали session_start(); уже. Поэтому передайте данные в сеансе.

 ob_start();
 session_start();
 if(isset($_POST['signup'])){

 $con=mysqli_connect("localhost","root","myspace4199","car_sales");
 // Check connection
 if (mysqli_connect_errno()) {echo "Failed to connect to MySQL: " . mysqli_connect_error();}

 $user_signup = "user_signup";

 $fname = mysqli_real_escape_string($con, $_POST['fname']);
 $mname = mysqli_real_escape_string($con, $_POST['mname']);
 $lname = mysqli_real_escape_string($con, $_POST['lname']);
 $district_name = mysqli_real_escape_string($con, $_POST['district_name']);
 $eemail = mysqli_real_escape_string($con, $_POST['eemail']);
 $access_level= mysqli_real_escape_string($con, $_POST['access_level']);
 $region_name = mysqli_real_escape_string($con, $_POST['region_name']);
 $district_pass = mysqli_real_escape_string($con, $_POST['district_pass']);


 $_SESSION['region_name'] = $region_name;



 //If user is a regional head
 if($access_level == 'regional_head'){
       $sql="INSERT INTO user_signup (eemail,mobile_number,fname,mname,lname,access_level,district_name,district_pass) VALUES ('$eemail','$mobile_number','$fname','$mname','$lname','$access_level','$district_name','$district_pass')";
       $_SESSION['eemail'] = $eemail; 
            header('Location: regional_head_page.php');
        }
        else if ($access_level == 'car_company'){
                            $sql="INSERT INTO user_signup (eemail,mobile_number,fname,mname,lname,access_level,district_name,district_pass) VALUES ('$eemail','$mobile_number','$fname','$mname','$lname','$access_level','$district_name','$district_pass')";
                            $_SESSION['eemail'] = $eemail;
                            header('Location: car_company_page.php');
        }

  if (!mysqli_query($con,$sql)) {
  die('Error: ' . mysqli_error($con));
  }

 echo "";

 mysqli_close($con);
 }
 ?>

И в region_head_page.php

<?php
 session_start();

 $con=mysqli_connect("localhost","root","myspace4199","car_sales");
 // Check connection
 if (mysqli_connect_errno()) {echo "Failed to connect to MySQL: " . mysqli_connect_error();}

 if ( isset($_SESSION['region_name']) ) {
     $region_name = $_SESSION['region_name'];
 } else {
     // got a problem, deal with it here
 }

 $sql="SELECT * FROM general_reservation WHERE region_name = '$region_name'";

 $records=mysqli_query($con,$sql);
?>
0

Попробуйте использовать сеанс или вы можете передать это значение переменной в строке запроса.

Query String: header ('Location: region_head_page.php? Region_name ='. $ Region_name);

ИЛИ

Session = $ _SESSION ['region_name'];

0

После того, как я видел код, в первую очередь почему вы не wirte в regional_head_page.php код в confirm_validation.php. И теперь вы также можете сделать это: в файле regional_head_page.php: изменить header('Location: regional_head_page.php'); to header('Location: regional_head_page.php?region_name='.$region_name);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню