Nie rozumiem przynajmniej jednej rzeczy, pracuję na PHP5. Magic Quotes jest włączony i dziwię się...
Napisałem dla testów taki mały programik, proszę zobaczyć niżej. I nie rozumiem dlaczego jesli wpisauję w formularzu np: "O'Connor" to wszystko działa bez zarzutu, w bazie danych jest to co wpisałem, czyli "O'Connor". Dlaczego nie pojawiają sie błędy, przecież użyłem znaku: '.
Nie zastosowałem nigdzie funkcji mysqli_real_escape_string, a wszystko działa. A jeśli wszystko działa, to po co używać funkcji mysqli_real_escape_string... ? Za uwagę dziękuję.
<?php $t = ($_POST['tekst']); $con = mysqli_connect(localhost, Jach, Pass, history); $q = "update wars set event='$t' where id=1"; $r = mysqli_query($con, $q); if ($r) ?> <form action="us.php" method="POST"> Wpisz <input type="text" name="tekst"></input> <input type="submit"></input> </form> </body> </html>
Nie jestem też pewny różnicy między 'magic quotes' a 'mysqli_real_escape_string' jedno i drugie wstawia backslashe przez problematyczne znaki. Wg. mnie różnica jest taka, że funkcja mysqli_real_escape_string robi to w momencie gdy dane wpisywane są do bazy danych, a magic quotes zawsze w formularzach...
PS
To forum jest bardzo zatłoczone, piszę rzadko