Diskuze: MySQL nechce zobrazit výsledky v tabulce
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Tvůrce

Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Pokud máš ten kód přesně takhle, tak bych řekl, že napřed ukládáš
do databáze neinicializované proměnné a teprve pak do nich dáváš ty
hodnoty z formuláře. To uložení by mělo následovat až po přiřazení
hodnot do těch proměnných. Jinak bych si dal ještě pozor na SQL injekci a
nepoužíval už zastaralý ovladač mysql - zkus se podívat tady na webu na
PDO
Bral jsem to spíš jako útržky kódu než jako ucelený skript. Pokud by to vypadalo skutečně tak, nemůže to fungovat - přesně tak jak píšeš.
<?php
/*pripojeni do databaze*/
$db_spojeni = mysqli_connect ('*****', '******', '*****', '*****', 3306);
/*pripojeni do databaze*/
if($_POST['odeslani_formulare']) {
/*začátek zapis dat do databáze*/
$sql_prikaz = mysqli_query($db_spojeni, "SET NAMES 'utf8'");
$sql_prikaz = "INSERT INTO nazev_tabulky (sloupec_1,sloupec_2,sloupec_3,sloupec_4,sloupec_5) "."VALUES('"
.mysqli_real_escape_string($db_spojeni, $_POST['values_1'])."','"
.mysqli_real_escape_string($db_spojeni, $_POST['values_1'])."','"
.mysqli_real_escape_string($db_spojeni, $_POST['values_1'])."','"
.mysqli_real_escape_string($db_spojeni, $_POST['values_1'])."','"
.mysqli_real_escape_string($db_spojeni, $_POST['values_1'])."')";
$objekt_vysledku = mysqli_query($db_spojeni, $sql_prikaz);
/*konec zapis dat do databáze*/
}
if($objekt_vysledku) {
echo 'registrace proběhla uspěšně';
}
else {
echo 'registrace selhala';
}
?>
ok zkusim teda prohodit ty proměný..
MySQLi umí vázání proměnných v parametrizovaných dotazech.
mohl bych se teda zeptat, jak to tedy bude?...díky
Tady máš ukázku kódu z oficiální dokumentace:
http://www.php.net/…atements.php
MySQLi jsem přeskočil, dnes už používám jen PDO.
Našel jsem dokonce způsob, jak dělat prepared statements v zastaralém ovladači MySQL. Bez escapování to nefunguje, ale je hodně případů, kdy je vhodné to použít.
Zobrazeno 9 zpráv z 9.