Mam maly problem, a mianowicie:
Pobieram dane uzytowknika:
$sql_login = $this->mysqli->prepare ( "SELECT user_id,nick,country,sex FROM users WHERE user_id=? limit 1" ); $sql_login->bind_param ( "i", $id ); $sql_login->execute (); $sql_login->bind_result ( $user_id,$nick,$country,$sex ); $data = $sql_login->fetch ();
Potem moge je odczytac za pomoca echo $user_id;
Chcialbym zrobic to tak:
$sql_login = $this->mysqli->query( "SELECT user_id,nick,country,sex FROM users WHERE user_id=$id limit 1" ); $data = $sql_login->fetch_object();
Tzn. Zeby pobieralo mi dane do obieku ktory potem odczytam $data->user_id;
Szukalem i nie moglem znalezc metody aby bylo bezpiecznie(dodanie id za pomoca prepare - wyklucza ataka sql_injection).
Wiadomo mozna przed zapytaniem robic:
$id=(int)$id;
czy
$id=intval($id);
Pytanie czy tworzac takie zapytanie powinnismy robic prepare czy normalne query?
Prepare w takim wypadku powinno byc uzywane do czego?