2016-02-06 21 views
1

我想要更新或編輯數據庫中的數據,但我不希望編輯頁面在另一個頁面中,我只是希望它在同一頁面中,我可以查看用戶添加的不同消息。但是當我點擊編輯鏈接時,表單不會顯示。當我點擊編輯鏈接時,同一頁面中的編輯表單不會顯示

幫我看看有什麼不對?

這裏是我的edit_news.php

<?php 
date_default_timezone_set('Asia/Manila'); 
include_once('db.php'); 
if($isset($_GET['id'])) 
{ 
    $id=$_GET['id']; 
    if(isset($_POST['edit'])) { 

    $title = $_POST['title']; 
    $body = $_POST['body']; 
    $date = date('Y-m-d H:i:s'); 

    $title = mysql_real_escape_string($title); 
    $body = mysql_real_escape_string($body); 

    $servername = "localhost"; 
    $username="root"; 
    $password = ""; 
    $database = "zchs_alumni"; 
    $connection = new mysqli($servername, $username, $password, $database); 
    if ($connection->connect_error) { 
     die("Connection failed: " . $connection->connect_error); 
    } 
     $sql = ("UPDATE news SET title = '$title', body = '$body', name = '$name', date = '$date' WHERE id='$id'")or die(); 
     mysql_query($sql); 
     echo "<script type='text/javascript'>alert('Changes saved!'); window.location.assign('/zchs-alumni/news.php');</script>"; 
    } 
}?> 

<?php 
if($isset($_GET['id'])) 
{ 
    $id=$_GET['id']; 
    $query=mysql_query("SELECT * FROM news WHERE id='$id'"); 
    while($row = mysql_fetch_array($query)) { 
     $title=$row['title']; 
     $body=$row['body']; 
?> 

<form action="" method="post"> 
<p> 
    <label for="title" id="title">Title</label> 
    <input type="text" name="title" value="<?php echo $row['title']; ?>"/> 
</p><br/> 
<p> 
    <label for="body" id="body">Body</label> 
    <input type="text" name="body" value="<?php echo $row['body']; ?>"/> 
</p><br/> 
<p> 
    <input type="submit" name="update" value="Save Changes" style="float: right"/> 
</p> 
</form> 
<?php 
    } }?> 

這是我news.php當新聞出現了,我想要的數據的編輯發生。

<?php 
mysql_connect("localhost", "root", "") or die(mysql_error()); 
mysql_select_db("zchs_alumni") or die(mysql_error()); 
$query = mysql_query("SELECT * FROM news ORDER BY date DESC LIMIT $start, $limit"); 


while($row = mysql_fetch_array($query)) { 

?> 
<p> <span><h3><?php echo $row['title']; ?></h3></span></p> 
<p> <span><?php 
    $img = $row['photo']; 
     if($img != ""){ 
      $image = 'news/'.$img; 
      echo '<center><img src="'.$image.'" width="750" height="350" alt=""></center>'; 
     } 
    ?></span></p> 
<br/> 
<p> <span><?php echo $row['body']; ?></span></p> 
<br/> 
<p> <span><h6>Posted at 
    <?php 
     $row_date = strtotime($row['date']); 
     echo date("F j, Y, g:i a", $row_date); 
    ?></h6></span></p> 
<br/> 
<p><span><a href="edit_news.php?id=<?php echo $row['id']; ?>"><span class="edit" title="Edit">EDIT</span></a></p> 
<?php 
} 
?> 
+1

請不要使用'mysql_'數據庫擴展,它已被棄用(一去不復返在PHP7) 特別是如果你剛開始學習PHP,花你的精力學習'PDO'或'mysqli_'數據庫擴展, [和這裏有一些幫助,以決定哪些使用](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php) – RiggsFolly

+0

_I我試圖更新或編輯數據數據庫,但我不希望編輯頁面在另一個頁面_那麼你將不得不學習如何對我們的AJAX。此代碼不會嘗試使用AJAX,因此您離目標很遠。我能否提醒你,SO是**不是免費的編碼或教程服務**你必須證明你已經做出了一些努力來解決你自己的問題。 – RiggsFolly

+0

我只是學習php,這就是爲什麼我問我是否錯過了一些東西,因爲我不認爲我這樣做,因爲代碼沒有錯誤。我試着解決它幾個小時,但因爲我不能在這裏問一些幫助。我不知道AJAX,所以我試圖在PHP中做,因爲它不可能,那麼我會嘗試使用AJAX。謝謝你! @RiggsFolly – Louie

回答

-1

我見過這些傢伙那樣做。簡單檢查post變量是否定義if(isset($ _ POST)),如果是,那麼它是更新提交,如果沒有,則顯示錶單!

相關問題