Jestem nowy w php. Próbuję odczytać plik tekstowy i wstawić dane linii po linii do bazy danych. Mój problem polega na tym, że niektóre zapytania do wstawiania znaków specjalnych nie działają
Na przykład Côte
, d.ä.
, d.y.
, DAB-sändare
wszystkie te działają. Ale nie można wstawić d'affaires
. Jeśli usuniemy d'affaires
, zapytanie zostanie wykonane, w przeciwnym razie nie wstawi żadnych danych do bazy danych. Kod php Kiedyś reaf i wstawić do bazy danych jest
Znaki specjalne nie mogą być wstawiane do bazy danych
mysql_connect("localhost","root","");
mysql_select_db("testdb");
$query="INSERT INTO keywords (id, keyword) VALUES ";
$handle = fopen("Ordlista.txt", "r");
if ($handle) {
$i=1;
while (($line = fgets($handle)) !== false) {
// process the line read.
// echo $line.'<br>';
if($i==1)
{
$query.=" (NULL , '".$line."') ";
$i++;
}
else {
$query.=" ,(NULL , '".$line."') ";
}
}
$query.=";";
// $qr=htmlspecialchars($query,ENT_QUOTES);
echo $query;
mysql_query($query);
} else {
echo 'error opening the file.';
// error opening the file.
}
fclose($handle);
AKTUALIZACJA
Użyłem tego kodu podczas tworzenia wtyczki w wordpress następnie znaki specjalne wstawiasz jako „?
”. W poprzednim kodzie został plik działa zmiana kodu i zrobić to
mysql_query("TRUNCATE TABLE $table");
// $structure = "INSERT INTO $table (`id`, `keyword`) VALUES (NULL, 'test1'), (NULL, 'test2');"; // Keywords for Testing
// $wpdb->query($structure);
//read text file & insert to database start
$query="INSERT INTO $table (id, keyword) VALUES ";
$fllocation=PLG_URL.'/Ordlista.txt';
$handle = fopen($fllocation, "r");
if ($handle) {
$i=1;
while (($line = fgets($handle)) !== false) {
// process the line read.
if($i==1)
{
$query.=" (NULL , '".mysql_real_escape_string($line)."') ";
$i++;
}
else {
$query.=" ,(NULL , '".mysql_real_escape_string($line)."') ";
}
}
$query.=";";
$wpdb->query($query);
// echo $query;
// mysql_query($query);
} else {
echo 'error opening the file.';
// error opening the file.
}
fclose($handle);
spróbować mysql_real_escape_string() –
[Dlaczego nie powinienem używać funkcji mysql_ * w PHP?] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php) – Phil
Po przeczytaniu twoja aktualizacja: Jaki jest zestaw znaków i twój zestaw stół? – Sal00m