sentencias - php mysql bind-param, cómo preparar el enunciado para la consulta de actualización
sentencias preparadas php mysqli (1)
Una UPDATE
funciona igual que una inserción o selección. Simplemente reemplace todas las variables con ?
.
$sql = "UPDATE Applicant SET phone_number=?, street_name=?, city=?, county=?, zip_code=?, day_date=?, month_date=?, year_date=? WHERE account_id=?";
$stmt = $db_usag->prepare($sql);
// This assumes the date and account_id parameters are integers `d` and the rest are strings `s`
// So that''s 5 consecutive string params and then 4 integer params
$stmt->bind_param(''sssssdddd'', $phone_number, $street_name, $city, $county, $zip_code, $day_date, $month_date, $year_date, $account_id);
$stmt->execute();
if ($stmt->errno) {
echo "FAILURE!!! " . $stmt->error;
}
else echo "Updated {$stmt->affected_rows} rows";
$stmt->close();
Tengo una consulta mysqli con el siguiente código:
$db_usag->query("UPDATE Applicant SET phone_number =''$phone_number'', street_name=''$street_name'', city=''$city'', county=''$county'', zip_code=''$zip_code'', day_date=''$day_date'', month_date=''$month_date'', year_date=''$year_date'' WHERE account_id=''$account_id''");
Sin embargo, todos los datos se extraen de los documentos HTML para evitar errores. Me gustaría utilizar una declaración preparada. Encontré documentación de PHP pero no hay un ejemplo de actualización