ugrás a tartalomhoz

MYSQL probléma ismét és ismét...

fabian.attila · 2013. Május. 5. (V), 19.09
Sziasztok!

Sajnos megint problémába akadtam az adatbázisomba való feltöltéskor, lassan egy órája próbálkozok megkeresni a hibát, de semmi haszonnal...

A táblát létrehozó kódrészlet:

sql_6 = "CREATE TABLE `" . $adatbazis_neve . "`.`megrendeles` (`termek_tipusa` TEXT CHARACTER SET utf8 COLLATE utf8_hungarian_ci NOT NULL, `meret` TEXT CHARACTER SET utf8 COLLATE utf8_hungarian_ci NOT NULL, `minta` TEXT CHARACTER SET utf8 COLLATE utf8_hungarian_ci NOT NULL, `megrendeles_ideje` DATE NOT NULL, `kivant_szallitas_ideje` DATE NOT NULL, `megrendelo` TEXT CHARACTER SET utf8 COLLATE utf8_hungarian_ci NOT NULL, `mennyiseg` INT NOT NULL, `uveg` INT, `gyartva` INT, `keszaru` INT, `csomagolva` INT, `szallitva` INT, `szallitas_ideje` DATE, `hiany_potlasa` TEXT CHARACTER SET utf8 COLLATE utf8_hungarian_ci, `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE = MyISAM;";
mysql_query($sql_6,$csatlakozas);
Majd ezzel a kódrészlettel próbálkozok bepaszírozni adatokat:

$sql_0 = "INSERT INTO megrendeles (termek_tipusa, meret, minta, megrendeles_ideje, kivant_szallitas_ideje, megrendelo, mennyiseg) VALUES ({$termek_tipusa}, {$meret}, {$minta}, {$megrendeles_ideje}, {$kivant_szallitas_ideje}, {$megrendelo}, {$mennyiseg})";		
mysql_query($sql_0,$csatlakozas);
A típusok nem keverednek, ahol az identitás DATE típusú, ott a feltöltött adat is DATE típusú (<input type="date" />-tel), ahol szöveg, ott textbox van.

A program lefut, hibaüzenetet nem ad, viszont az adatbázisban nem jelennek meg a feltöltött adatok...

A segítséget előre is köszönöm!
 
1

SQL lekérdezést eleve nem

Poetro · 2013. Május. 5. (V), 19.48
SQL lekérdezést eleve nem töltünk fel direktben, látatlanul adattal. Azt mindenképpen escapeljük, ha nem, már eleve az is okozhat problémát. Az adatoknak megfelelő típusúnak kell lennie, megfelelően kell idézőjelekbe rakni. A PHP-s, és HTML-es adattípusok nem feltétlen felelnek meg egy-az-egyben MySQL adattípusok szöveges reprezentálásának.
2

hint

szabo.b.gabor · 2013. Május. 6. (H), 12.40
$sql_0 = "INSERT INTO megrendeles (termek_tipusa, meret, minta, megrendeles_ideje, kivant_szallitas_ideje, megrendelo, mennyiseg) VALUES ({$termek_tipusa}, {$meret}, {$minta}, {$megrendeles_ideje}, {$kivant_szallitas_ideje}, {$megrendelo}, {$mennyiseg})";       
if(mysql_query($sql_0,$csatlakozas) === false){
echo mysql_error();
}
amúgy meg..
3

Nincs '' jel az értékeknél.

inf · 2013. Május. 7. (K), 09.53
Nincs 'idéző' jel az értékeknél. Eleve PDO sablont kellene használnod, az automatikusan hozzácsapja az idézőjeleket is, amikor escapeli...