2017-02-03 73 views
0

我檢查源代碼十次,但無法找到anymistake,由於某種原因,我記得現在是工作不工作,我沒有其他地方改變什麼怪都wors除更新,當iclick編輯按鈕它給出錯誤,這意味着有問題的查詢。不能與mysqli的更新查詢

<?php 
$editId = $_GET['id']; 
$event = mysqli_query($con, "SELECT * FROM events WHERE id = '$editId'")->fetch_assoc(); 
if(isset($_POST['submit'])){ 
$name = $_POST['name']; 
$description = $_POST['description']; 
$date = $_POST['date']; 
$artists = $_POST['artists']; 
$tickets = $_POST['tickets']; 
$updateQuery = mysqli_query($con, "UPDATE events SET name='$name',description='$description',date='$date', artists='$artists', ticket='$tickets' WHERE id = '$editId'"); 
} 
?> 
<?php if(isset($updateQuery) && $updateQuery): ?> 
<div class="alert alert-success"> 
<strong>Successfully Edited</strong> 
</div> 
<?php endif; ?> 
<?php if(isset($updateQuery) && !$updateQuery): ?> 
<div class="alert alert-danger"> 
<strong>Error</strong> 
</div> 
<?php endif; ?> 
<form action="<?php echo $app_host; ?>/admin/?page=editevent&id=<?php echo $editId; ?>" method="post"> 
<div class="form-group"> 
<label for="name">Name</label> 
<input value="<?php echo $event['name']; ?>" required="true" type="text" class="form-control" id="name" name="name"> 
</div> 
<div class="form-group"> 
<label for="description">Description</label> 
<textarea class="form-control" id="description" name="description"><?php echo $event['description'];; ?></textarea> 
</div> 
<div class="form-group"> 
<label for="date">Date</label> 
<input value="<?php echo $event['date']; ?>" required="true" type="text" class="form-control" id="date" name="date"> 
</div> 
<div class="form-group"> 
<label for="artists">Artists</label> 
<input value="<?php echo $event['artists']; ?>" required="true" type="text" class="form-control" id="artists" name="artists" data-role="tagsinput"> 
</div> 
<div class="form-group"> 
<label for="tickets">Ticket Link</label> 
<input value="<?php echo $event['tickets']; ?>" required="true" type="text" class="form-control" id="tickets" name="tickets" data-role="tagsinput"> 
</div> 
<input name="submit" type="submit" class="btn btn-default" value="Edit Event" /> 
</form> 
+0

這錯誤給你? –

+2

它會得到什麼錯誤?使用'die(mysqli_error($ con));'查看SQL錯誤消息。 – Barmar

+0

既然你已經切換到mysqli的,你也應該修正你的代碼中使用準備好的語句,而不是變量替換。如果值包含引號,則可能會解決問題。 – Barmar

回答

1

好了,你聲明一個變量,

$tickets = $_POST['tickets']; 

,比你說的

$updateQuery = mysqli_query($con, "UPDATE events SET name='$name',description='$description',date='$date', artists='$artists', ticket='$tickets' WHERE id = '$editId'"); 
} 

和解決方案很簡單:

$updateQuery = mysqli_query($con, "UPDATE events SET name='$name',description='$description',date='$date', artists='$artists', tickets='$tickets' WHERE id = '$editId'"); 
} 

簡單地改變 '車票'在查詢'票'。