私はこれに困惑しています...次のコードを使用して、レコードを編集用のフォームにロードしています。レコードはフィールドなどに正常に読み込まれます。[送信] をクリックすると、レコードがリロードされません。URL で edit_link.php?link_pk=50 を使用すると、レコードが読み込まれません。値を未編集のレコードに変更すると、フォームに正常にロードされますが、そのレコードを編集すると、同じことが起こります。データベース内のデータは、編集前とまったく同じように見えます (つまり、送信する前に何も変更していません)。
$link_pk = $_GET['link_pk'];
$author_pk = $_GET['author_pk'];
$title = $_POST['title'];
$url = mysql_real_escape_string($_POST['url']);
$url_for_link = $_POST['url'];
$alt = $_POST['alt'];
$credit = $_POST['credit'];
$sub_discipline_fk = $_POST['sub_discipline'];
$link_category_fk = $_POST['category'];
$icon = $_POST['icon'];
$query_link = "SELECT * FROM link, sub_discipline, link_category, link_icon WHERE link.sub_discipline_fk = sub_discipline.sub_discipline_pk AND link.link_category_fk = link_category.link_category_pk AND link.link_icon_fk = link_icon.link_icon_pk AND link.link_pk = '$link_pk'";
$result_link = mysql_query($query_link, $connection) or die(mysql_error());
$row_link = mysql_fetch_assoc($result_link);
switch ($icon) {
case '1':
$link = mysql_real_escape_string("<a class='text' href='" . $url_for_link . "' target='_blank' alt='" . $alt . "' >" . $title . "</a>");
break;
case '2':
$link = mysql_real_escape_string("<a class='video' href='" . $url_for_link . "' target='_blank' alt='" . $alt . "' >" . $title . "</a>");
break;
case '3':
$link = mysql_real_escape_string("<a class='interactive' href='" . $url_for_link . "' target='_blank' alt='" . $alt . "' >" . $title . "</a>");
break;
case '4':
$link = mysql_real_escape_string("<a class='microscope' href='" . $url_for_link . "' target='_blank' alt='" . $alt . "' >" . $title . "</a>");
break;
}
if(isset($_POST['submit'])){
$query = "UPDATE link SET link_title = '$title', url = '$url', link = '$link', alt = '$alt', credit = '$credit', sub_discipline_fk = '$sub_discipline_fk', updated = NOW(), updated_by = '$author_pk', link_category_fk = '$link_category_fk', link_icon_fk = '$link_icon_fk' WHERE link_pk = '$link_pk'";
$result = mysql_query($query, $connection) or die(mysql_error());
if($result){
$query_link = "SELECT * FROM link, sub_discipline, link_category, link_icon WHERE link.sub_discipline_fk = sub_discipline.sub_discipline_pk AND link.link_category_fk = link_category.link_category_pk AND link.link_icon_fk = link_icon.link_icon_pk AND link.link_pk = '$link_pk'";
$result_link = mysql_query($query_link, $connection) or die(mysql_error());
$row_link = mysql_fetch_assoc($result_link);
$message = '- The link has been updated';
}
}
上記が非推奨であることを思い出させないでください。私はそれを認識しています。
ありがとう