2017-02-10 3 views
1

У меня есть сводная страница, на которой будет отображаться все имя клиента, которое называется readmsg.php, и каждый клиент имеет уникальную базу данных в базе данных MySQL. На другой странице можно просмотреть их данные, которые называются readmsgdetail.php.Показать URL-адрес herf с использованием id в PHP MySQL

Однако у меня возникли проблемы с использованием msgid, чтобы отображать только данные одного клиента. На данный момент мой readmsgdetail.php может отображать все детали для всех клиентов.

Код для моего readmsg.php:

 <div class="row"> 
     <?php 
     $stmt = $DB_con->prepare('SELECT firstname,lastname,phone,enquiry FROM user_message ORDER BY msgid DESC'); 
     $stmt->execute(); 

     if ($stmt->rowCount() > 0) { 
      while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
       extract($row); 
       ?> 
       <div class="col-xs-12"> 
        <p><a class="page-header" href="readmsgdetail.php?msgdetail_id=<?php echo $row['msgid']; ?>"><?php echo $lastname . $firstname; ?></a></p> 
       </div>  
       <?php 
      } 
     } else { 
      ?> 
      <div class="col-xs-12"> 
       <div class="alert alert-warning"> 
        <span class="glyphicon glyphicon-info-sign"></span> &nbsp; No Data Found ... 
       </div> 
      </div> 
      <?php 
     } 
     ?> 
    </div> 

Код для моего readmsgdetail.php:

<?php 
require_once 'dbconfig.php'; 
//////------------------------------------------------ 
session_start(); 
if (empty($_SESSION) || empty($_SESSION['login_id'])) { 
    header('location:login.php'); 
}; 
echo"Welcome!! " . $_SESSION['login_id'] . " "; 
echo '<a href="logout.php">log out</a>'; 
//----------------------------------------------------- 

if (isset($_REQUEST['msgdetail_id']) && !empty($_REQUEST['msgdetail_id'])) { 
    $id = $_REQUEST['msgdetail_id']; 
} else { 

    header("Location: readmsg.php"); 
} 
?> 
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" /> 
     <title></title> 
     <link href="../bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css"/> 


     <link href="../bootstrap/css/bootstrap-theme.min.css" rel="stylesheet" type="text/css"/> 
    </head> 
    <body> 




     <div class="container"> 


      <div class="page-header"> 
       <h1 class="h2">User review <a class="btn btn-default" href="readmsg.php"> all reviews </a></h1> 
      </div> 



      <?php 
      $stmt = $DB_con->prepare('SELECT firstname,lastname,phone,enquiry FROM user_message ORDER BY msgid DESC'); 
      $stmt->execute(); 

      if ($stmt->rowCount() > 0) { 
       while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
        extract($row); 
        ?> 
        <form method="post" enctype="multipart/form-data" class="form-horizontal"> 




         <table class="table table-bordered table-responsive"> 

          <tr> 
           <td><label class="control-label">Name.</label></td> 
           <td><input class="form-control" type="text" name="name" value="<?php echo $lastname . $firstname; ?>" required /></td> 
          </tr> 



          <tr> 
           <td><label class="control-label">Phone </label></td> 
           <td><input class="form-control" type="text" name="phone" value="<?php echo $phone; ?>" required /></td> 
          </tr> 

          <tr> 
           <td><label class="control-label">Feedback/Enquiry.</label></td> 

           <td><input class="form-control" type="text" name="comment" value="<?php echo $enquiry; ?>" required /></td> 

          </tr> 

          <tr> 
           <td colspan="2"> 
            <a class="btn btn-default" href="readmsg.php"> <span class="glyphicon glyphicon-backward"></span> back </a> 

           </td> 
          </tr> 
         </table> 
        </form>  
        <?php 
       } 
      } else { 
       ?> 
       <div class="col-xs-12"> 
        <div class="alert alert-warning"> 
         <span class="glyphicon glyphicon-info-sign"></span> &nbsp; No Data Found ... 
        </div> 
       </div> 
       <?php 
      } 
      ?> 

     </div> 
    </body> 
</html> 

stucture из MySQL: enter image description here

Текущий результат для страница:

enter image description here

После того как я изменить свое отборное заявление на

$stmt = $DB_con->prepare("SELECT firstname,lastname,phone,enquiry FROM user_message where msgid = 'msgdetail_id'"); 

Это показывает "никаких данных не найдено.

+0

добавить 'WHERE' к' SELECT'. –

+0

после того, как я перехожу к «$ stmt = $ DB_con-> prepare (« SELECT имя, фамилия, телефон, запрос FROM user_message, где msgid = 'msgdetail_id' ");" Он не показывает никаких данных. – xhinvis

+0

'где msgid = 'msgdetail_id'', потому что' msgid' является 'int', и вы пытаетесь передать строку. –

ответ

0

Код в readmsg.php должен измениться:

$stmt = $DB_con->prepare('SELECT msgid, firstname,lastname,phone,enquiry FROM user_message ORDER BY msgid DESC'); 

Код в readmsgdetail.php должен измениться:

$stmt = $DB_con->prepare("SELECT firstname,lastname,phone,enquiry FROM user_message where msgid=$id"); 

Это WOKING сейчас Thx за помощь в комментариях !.

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