Also, ich versuche herauszufinden, wie dies das und es mich verblüfft. DIESES wird NICHT ONLINE LIVE SO SQL-INJEKTION, die ich nicht kümmern. Was mache ich falsch/richtig?UPDATE einzelne Spalte in der Datenbank: PHP & MySQL
BEARBEITEN: Markieren Sie für das Formular, ich nehme $ Kommentar von.
<!DOCTYPE html>
<html lang="en">
<LINK href="stylesheet.css" rel="stylesheet" type="text/css">
<script src ="js/validateform.js"></script>
<head>
<meta charset="UTF-8">
<title>UniHelp Home</title>
</head>
<body>
<div id="headeruni">
<h1>Welcome <?php echo $_GET["name"]; ?> to UniHelp!</h1>
</div>
<div id ="infouni">
<h3>Welcome to UniHelp. The social Network getting you connected to other people all over the University for any help you require!</h3>
</div>
<div id ="nameandemail">
<form action="formsend.php" method="post">
First name: <br> <input type="text" name="name"><br>
Email: <br> <input type="text" name="email"><br>
Comment: <br> <input type="text" name="message"><br>
<input type="submit" name="submit">
</form>`enter code here`
</div>
<div id="grabphpdiv">
<?php
$db = mysql_connect("localhost", "root", "root");
if (!$db) {
die("Database connect failed: " . mysql_error());
}
$db_select = mysql_select_db("UNii", $db);
if (!$db_select) {
die("Database selection failed: " . mysql_error());
}
$result = mysql_query("SELECT * FROM Dbsaved", $db);
if (!$result) {
die ("Database query failed: " . mysql_error());
}
$comment = $_POST['$comment'];
while ($row = mysql_fetch_array($result)) {
echo "<div id='posts'>";;
echo "<h2>";
echo $row[1] . "";
echo "</h2>";
echo "<p>";
//echo $timestamp = date('d-m-y G:i:s ');
echo "<br>";
echo "<br>";
echo $row[2] . "";
echo "</p>";
echo "<p>";
echo $row[3] . "";
echo "</p>";
echo '<a href=delete.php?id=' . $row[0]. '">Delete</a>';
echo "<br>";
echo "<br>";
echo 'Comment: <br>
<input type=text name=comment><br>
<a href=addcomment.php?id=' . $row[0]. '&comment='. $row['$comment'].'>Comment</a>';
echo "<p>";
echo $row['comment'] . "";
echo "</p>";
echo "</div>";
echo "<br>";
}
?>
</div>
</body>
<div id="footer">Copyright © James Taylor 2016</div>
</html>
[Little Bobby] (http://bobby-tables.com/) sagt *** [Ihr Skript ist für SQL Injection Attacks gefährdet.] (Http://stackoverflow.com/questions/60174/how- can-i-prevent-sql-injection-in-php) ***. Sogar [die Zeichenfolge zu entkommen] (http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string) ist nicht sicher! –
*** Bitte [stoppen Sie die Verwendung von mysql_ * 'Funktionen] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php). *** [Diese Erweiterungen ] (http://php.net/manual/en/migration70.removed-exts-sapis.php) wurden in PHP 7 entfernt. Erfahren Sie mehr über [prepared] (http://en.wikipedia.org/wiki/Prepared_statement) Anweisungen für [PDO] (http://php.net/manual/en/pdo.prepared-statements.php) und [MySQLi] (http://php.net/manual/en/mysqli.quickstart.prepared- Statements.php) und erwäge die Verwendung von PDO, [es ist wirklich ziemlich einfach] (http://jayblanchard.net/demystifying_php_pdo.html). –
Ich hasse es, wenn Leute sagen * "Ich bin nicht so weit weg ..." * oder * "Diese Seite wird nicht öffentlich sein ..." * oder * "Es ist nur für die Schule, also ist Sicherheit egal ... . "*. Wenn Lehrer und Professoren nicht vom ersten Tag an über Sicherheit reden, machen sie es falsch. Fordere sie heraus. Sie lehren schlampige und gefährliche Programmierpraktiken, die Schüler später verlernen müssen. Ich hasse es auch, wenn Leute sagen, * "Ich werde später Sicherheit hinzufügen ..." * oder * "Sicherheit ist jetzt nicht wichtig ..." *. Wenn Sie beim ersten Mal keine Zeit haben, es richtig zu machen, wann finden Sie die Zeit, es später hinzuzufügen? –