Нужна помощь в обновлении данных в таблице базы данных с помощью Facebox

Добрый день всем вам. Как видно из заголовка, мне нужна помощь по поводу facebox при обновлении данных.

Вот код для кнопки, чтобы показать лицо

echo '
td>
<a  rel="facebox" href="../admin/c_status.php?id='.$row["userID"].'">Edit</a>
</td>
';

и вот код внутри Facebox

 <?php
include("../db/dbCon.php");
//$id = $_GET['id'];
//echo $id;
?>

Status
<form method="post">
<select name="selActive" id ="selActive">
<option value="ACTIVE">ACTIVE</option>
<option value="IN-ACTIVE">IN-ACTIVE</option>
<option value="GRADUATE">GRADUATE</option>
</select>
<br>
<br>

<button class="btn btn-success btn-block btn-large" name="saveChangeButton" id ="saveChangeButton">Save Changes</button>
</form>

<?php
if(isset($_POST['saveChangeButton'])){
$id = $_GET['id'];
$status = $_POST['selActive'];

$cStatus = $conn->prepare("UPDATE useraccount SET status = :status WHERE userID = :userID");
$cStatus->bindParam(':status', $status);
$cStatus->bindParam(':userID', $id);
$cStatus->execute();
}
?>

Проблема, с которой я сталкиваюсь, заключается в том, что данные не будут обновляться при нажатии кнопки редактирования, НО, когда я редактирую через адресную строку, например «Http: //localhost/ict/admin/c_status.php«. Это будет работать.

3

Решение

Вы можете сделать тип ввода скрытым и просто сделать его значение равным $_GET['id']

   <form method="post">
<select name="selActive" id ="selActive">
<option value="ACTIVE">ACTIVE</option>
<option value="IN-ACTIVE">IN-ACTIVE</option>
<option value="GRADUATE">GRADUATE</option>
</select>

<input type="hidden" name="userid" value="<?php echo $_GET['id'];?>">
<br>
<br>

<button class="btn btn-success btn-block btn-large" name="saveChangeButton" id ="saveChangeButton">Save Changes</button>
</form>

затем перенесите ваш php-код для обновления useraccount ниже или выше вашей ссылки. Когда вы использовали facebox, форма, которую вы открыли как всплывающее окно, стала частью этого файла, поэтому логично перенести ваш php-код для обновления аккаунтов здесь, так как вы этого не сделали укажите атрибут действия в форме выше.

   echo '<td>
<a  rel="facebox" href="../admin/c_status.php?id='.$row["userID"].'">Edit</a>
</td>';
include("../db/dbCon.php");
if(isset($_POST['saveChangeButton'])){
$id = $_POST['userid'];
$status = $_POST['selActive'];

$cStatus = $conn->prepare("UPDATE useraccount SET status = :status WHERE userID = :userID");
$cStatus->bindParam(':status', $status);
$cStatus->bindParam(':userID', $id);
$cStatus->execute();
}

надеюсь, это поможет

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]