Autor Zpráva
a
Profil *
mám udělaný script pro import dat do mysqlDB ale nevloží mi to řádky u každého řádku to nahodí

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near

co stím? :- /
Hugo
Profil
a

Mas chybu v SQL dotazu. Pokud ho sem nedas, tak ti nikdo neporadi.
a
Profil *
/* Pomocná funkce pro vložení řádku do tabulky */
function insert_row($tbl_name, $data, $link) {
foreach($data as $value) {
$value = '\''.mysql_real_escape_string($value, $link).'\''; // ošetření dat
}
$sql = 'INSERT INTO '.$tbl_name.' VALUES(NULL, '.implode(', ', $data).')';
return @mysql_query($sql, $link);
}
a
Profil *
stačitodle?
Hugo
Profil
Retezce v dotazu musi byt obalene apostrofama, proto ti to nebere.
a
Profil *
? kde? : -D
Hugo
Profil
Neumis cist? Vsechny retezce, ktere cpes do toho dotazu obal apostrofama, tzn. ze musis upravit tuto cast.

implode(', ', $data)

treba takto

implode("', '", $data)

pak bude dotaz vypadat takto:

$sql = 'INSERT INTO '.$tbl_name." VALUES(NULL, ".implode("', '", $data).")";
a
Profil *
aha přehlíd slovo :-D diky ale jaksi to nepomohlo furt ta sama chyba
Hugo
Profil
Jeste musis dat apostrof i na zacatek prvniho retezce a na konec posledniho. Na to jsem zapomnel.
a
Profil *
jakto myslíš? totiž mi to furt nejde :-D
Hugo
Profil
a

Neber to spatne, ale zkus pouzit mozek. Vyplaci se to.
a
Profil *
$sql = "INSERT INTO ".$tbl_name." VALUES(".NULL.", ".implode("', '", $data).")";

?
Hugo
Profil
$sql = "INSERT INTO ".$tbl_name." VALUES(NULL, '".implode("', '", $data)."')";

Zkus si o PHP/MySQL aspon neco precist.
a
Profil *
když je manuál v angličtině tak si moc nepočtu
Hugo
Profil
http://linuxsoft.cz/mysql

Bez (minimalne) anglictiny se stejne v realnem zivote neobejdes, tak se uc.
a
Profil *
jinak fiči mi to dik ;-)
Joker
Profil *
a
Jestli Vám to stále nefunguje, nechte si vypsat sestavený SQL dotaz na obrazovku daleko lépe najdete, co je špatně. Pak už jen musíte zjistit, proč je to špatně a jak zařídit, aby to bylo správně ;-)
Joker
Profil *
aha, tak už nic :)
Toto téma je uzamčeno. Odpověď nelze zaslat.