Utilizarea real\_escape\_string() va împiedica piratarea scriptului cu o injecție SQL. Dacă trebuie să utilizați valorile în altă parte, atunci le puteți scăpa atunci când creați interogarea.
$name = $\_POST["name"];
$sql = "SELECT * FROM users WHERE username = "".mysqli\_real\_escape\_string($mysqli, $name).""";
Faceți ceva similar de fiecare dată când creați o interogare SQL. Cererea dvs. INSERT ar trebui să aibă și valori scăpate, fie prin scăparea valorii stocate în variabilă, fie prin scăparea acesteia atunci când creați interogarea. „bdbd3b205f”>
De ce vedeți „o treabă bună” fără a introduce date …
Nu vă asigurați niciodată că există de fapt este de intrare. Scriptul dvs. va încerca să interacționeze cu baza de date, chiar dacă utilizatorul nu a completat încă formularul.
De ce nu sunt create înregistrări ale bazei de date.
Hmm ... Nu sunt sigur. Mai ales că se spune că a funcționat .
Încercați să faceți modificările de mai sus, apoi postați un comentariu la acest răspuns pentru a mă anunța dacă există o schimbare și care este acea modificare și putem merge de acolo.
Verificați și jurnalele serverului pentru a vedea dacă există erori acolo. Dacă nu puteți face acest lucru sau erorile sunt dezactivate, puteți încerca să adăugați acest lucru în partea de sus a scriptului:
ini\_set("error\_reporting", E\_ALL);
ini\_set("html\_errors", true);
ini\_set("display\_errors", "stdout");
Apropo ...
Atributele for ale etichetelor dvs. ar trebui să indice ID-ul unui element.
$ connect = mssql\_connect ($ host, $ user, $ pass) sau die ("Imposibil de conectat"); $ database = mssql\_select\_db ($ db, $ connect) sau die („Nu se poate conecta la baza de date selectată”);
if trim($firstname) == "" || trim($lastname)=="" || trim($pwd)== ""
{
echo "You must enter both a firstname, lastname and password!!";
}
else
{
$sql = "INSERT INTO users ([email],[first\_name],[last\_name],[password])VALUES("$email","$firstname","$lastname","$pwd")";
$result = mssql\_query($sql);
if(!$result)
{
echo mssql\_error();
exit;
}
mssql\_free\_result($result);
mssql\_close();
echo "Data successfully inserted!!";
}
}
?>
deci php co De ce ți-am dat inițial a fost doar un exemplu, chiar și un cod de ecou simplu nu funcționează. Ei bine, am scris codul pe Notepad ++ și l-am încărcat lipind codul în kompozer. vezi mi sa spus că trebuie încărcat cu extensia .php în loc de hmtl și acesta este motivul pentru care nu funcționează. dar mi se pare confuz, deci cum îl pot atașa la un anumit link din pagina mea de index. vă rog un sfat și spuneți-mi ce credeți. apreciez-o