У меня есть скрипт для редактирования существующих данных. Массив выборки используется для заполнения полей данными и запросами для удаления записи и изменения записи. Когда я нажимаю «Сохранить», запись удаляется и не сохраняется, даже если она имеет правильный идентификатор.
$feedid = mysql_real_escape_string($_POST['feedid']); $Query = "UPDATE ccregisterfeed SET author='$author', category='$category', copyright='$copyright', feeddescription='$feeddescription', feedtitle='$feedtitle', websitelink='$websitelink', imagelink='$imagelink', imagetitle='$imagetitle', subtitle='$subtitle' WHERE id='$feedid' AND username ='$user'";
И вход в паре с идентификатором:
<div class="submit"><input name="Submit" type="submit" class="submitbtn" value="Save"/></div> <input type="hidden" name="feedid" value="<?php echo $id; ?>"/>
Если я удалю удаление, нажмите «Сохранить», нажав «Сохранить».
<div class="delete"><input name="Delete" type="submit" class="deletebtn" value="Delete"/></div> <input type="hidden" name="Delete" value="<?php echo $id; ?>">
ПОЛНЫЙ СКРИПТ
<?php include "connect.php"; require "authenticate.php"; error_reporting(E_ERROR); $message = $_GET['message']; $user = $_SESSION['UserName']; //declare form field and form field error variables $authorErr = $categoryErr = $copyrightErr = $feeddescriptionErr = $feedlinkErr = $feedtitleErr = $websitelinkErr = $imagelinkErr = $imagetitleErr = $subtitleErr = ""; $author = $category = $copyright = $feeddescription = $feedlink = $feedtitle = $websitelink = $imagelink = $imagetitle = $subtitle = ""; //form field validation function validate_input($data) { $data = trim($data); $data = stripslashes($data); $data = htmlspecialchars($data); return $data; } if (isset($_POST['Submit'])) { if (empty($_POST["author"])) { $has_errors = true; $authorErr = "Enter your name"; }else{ $author = validate_input($_POST["author"]); } if (empty($_POST["category"])) { $has_errors = true; $categoryErr = "Enter a category"; }else { $category = validate_input($_POST["category"]); } if (empty($_POST["copyright"])) { $has_errors = true; $copyrightErr = "Enter copyright details"; } else { $copyright = validate_input($_POST["copyright"]); } if (empty($_POST["feeddescription"])) { $has_errors = true; $feeddescriptionErr = "Enter feed description"; } else { $feeddescription = validate_input($_POST["feeddescription"]); } if (empty($_POST["feedtitle"])) { $has_errors = true; $feedtitleErr = "Enter text only"; } else { $feedtitle = validate_input($_POST["feedtitle"]); } if (empty($_POST["websitelink"])) { $has_errors = true; $websitelinkErr = "Enter link to website"; } else { $websitelink = validate_input($_POST["websitelink"]); } if (empty($_POST["imagelink"])) { $has_errors = true; $imagelinkErr = "Enter link to image"; } else { $imagelink = validate_input($_POST["imagelink"]); } if (empty($_POST["imagetitle"])) { $has_errors = true; $imagetitleErr = "Enter image name"; } else { $imagetitle = validate_input($_POST["imagetitle"]); } if (empty($_POST["subtitle"])) { $has_errors = true; $subtitleErr = "Enter feed subtitle"; } else { $subtitle = validate_input($_POST["subtitle"]); } if (!$has_errors) { $Link = mysql_connect($Host, $User, $Password); $user = $_SESSION['UserName']; } // var_dump ($date); // var_dump ($feedlink); // var_dump ($feeddescription); //write edited data into tables matching logged in user with their data $feedid = mysql_real_escape_string($_POST['feedid']); $date = date("Ymd H:i:s"); $feeddescription = str_replace("_", "", $feeddescription); $feeddescription = str_replace("-", "", $feeddescription); $feeddescription = str_replace("!", "", $feeddescription); $feeddescription = str_replace("#", "", $feeddescription); $feeddescription = str_replace("'", "", $feeddescription); $Query = "UPDATE ccregisterfeed SET author='$author', category='$category', copyright='$copyright', feeddescription='$feeddescription', feedtitle='$feedtitle', websitelink='$websitelink', imagelink='$imagelink', imagetitle='$imagetitle', subtitle='$subtitle' WHERE id='$feedid' AND username ='$user'"; if($sql = mysql_db_query ($DBName, $Query, $Link)) { header("location: rss.php"); // header("location: feededit.php"); } else { die("Query was: $Query. Error: ".mysql_error($Link)); } } //show logged in user their updated data $user = $_SESSION['UserName']; $result = mysql_query("SELECT * FROM ccregisterfeed WHERE username = '$user'") or die(mysql_error()); while($row = mysql_fetch_array($result)){ $id=$row['id']; $author = $row['author']; $category = $row['category']; $copyright = $row['copyright']; $feeddescription = $row['feeddescription']; $feedtitle = $row['feedtitle']; $websitelink = $row['websitelink']; $imagelink = $row['imagelink']; $imagetitle = $row['imagetitle']; $subtitle = $row['subtitle']; } //delete form and image data when users clicks delete button if (isset($_POST['Delete'])){ $deleteuser = $_POST['Delete']; mysql_query("DELETE FROM ccregisterfeed WHERE id = '$deleteuser'"); mysql_query("ALTER TABLE ccregisterfeed AUTO_INCREMENT = 1"); $message = 'Feed Deleted'; header("Location: feededit.php?&message=".urlencode($message)); } ?> <!doctype html> <html> <head> <meta charset="utf-8"> <script> $(function(){ $(document).click(function(){ $('.messagebox').hide(); }); }); </script> </head> <form action="feededit.php" method="post" enctype="multipart/form-data" name="edit" id="editfeed"> <fieldset> <div class="legendcreate">Feed Edit</div> <div class="feedcontainer"> <div class="feedcontainerinner"> <div><label class="labelshow">Author</label><input id="author" class="insetfeed" name="author" type="text" placeholder="Author" value="<?PHP print $author ; ?>"/><p class="errorinput"><?php echo $authorErr;?></p></div> <?php if(isset($_GET['message']) && !empty($message)): ?> <div class="messagebox"> <?php echo $message ?> </div> <?php endif; ?> <div><label class="labelshow">Category</label><input id="category" class="insetfeed" name="category" type="text" placeholder="Category" value="<?PHP print $category; ?>"/><p class="errorinput"><?php echo $categoryErr;?></p></div> <div><label class="labelshow">Copyright</label><input id="copyright" class="insetfeed" name="copyright" type="text" placeholder="Copyright" value="<?PHP print $copyright; ?>"/><p class="errorinput"><?php echo $copyrightErr;?></p></div> <div><label class="labelshow">Feed Title</label><input id="feedtitle" class="insetfeed" name="feedtitle" type="text" placeholder="Feed Title" value="<?PHP print $feedtitle; ?>"/><p class="errorinput"><?php echo $feedtitleErr;?></p></div> <div><label class="labelshow">Website Link</label><input id="websitelink" class="insetfeed" name="websitelink" type="text" placeholder="Website Link" value="<?PHP print $websitelink; ?>"/><p class="errorinput"><?php echo $websitelinkErr;?></p></div> <div><label class="labelshow">Image Link</label><input id="imagelink" class="insetfeed" name="imagelink" type="text" placeholder="Image Link" value="<?PHP print $imagelink; ?>"/><p class="errorinput"><?php echo $imagelinkErr;?></p></div> <div><label class="labelshow">Image Title</label><input id="imagetitle" class="insetfeed" name="imagetitle" type="text" placeholder="Image Title" value="<?PHP print $imagetitle; ?>"/><p class="errorinput"><?php echo $imagetitleErr;?></p></div> <div><label class="labelshow">Subtitle</label><input id="subtitle" class="insetfeed" name="subtitle" type="text" placeholder="Subtitle" value="<?PHP print $subtitle; ?>"/><p class="errorinput"><?php echo $subtitleErr;?></p></div> <div><textarea id="description" name="feeddescription" class="textareadescription" placeholder="Enter feed description"><?php $out = htmlspecialchars_decode($feeddescription); $out = str_replace( '\n', '<br />', $out ); echo $out; ?></textarea> <div class="submit"><input name="Submit" type="submit" class="submitbtn" value="Save"/></div> <input type="hidden" name="feedid" value="<?php echo $id; ?>"/> <div class="delete"><input name="Delete" type="submit" class="deletebtn" value="Delete"/></div> <input type="hidden" name="Delete" value="<?php echo $id; ?>"> </div> </div> </div> </form> </fieldset> </body> </html>