ich wollte alle meine Städte ausgeben lassen in meinem SQL Befehl mit LIKE, jedoch bekomme ich folgendes problem:
Es gibt 2 Städte einmal namens Bunde und einmal Bünde.
Wenn ich jetzt Bünde eingebe zeigt er mir kein Ergebnis, dass bedeutet denk ich mal das er den Umlaut nicht erkennt? Was mach ich dagegen ? Bin nicht fündig geworden. Alle Einstellungen sind auf UTF-8 (In PHPmyadmin und als pdo Attribute:
SQL Code:
PHP Code:
SELECT `primary_key`,`zipcode`,`city`,`state`,`community` FROM `dataset` WHERE `city` LIKE :city GROUP BY `city` LIMIT 100;
ich wollte alle meine Städte ausgeben lassen in meinem SQL Befehl mit LIKE, jedoch bekomme ich folgendes problem:
Es gibt 2 Städte einmal namens Bunde und einmal Bünde.
Wenn ich jetzt Bünde eingebe zeigt er mir kein Ergebnis, dass bedeutet denk ich mal das er den Umlaut nicht erkennt? Was mach ich dagegen ? Bin nicht fündig geworden. Alle Einstellungen sind auf UTF-8 (In PHPmyadmin und als pdo Attribute:
SQL Code:
PHP Code:
SELECT `primary_key`,`zipcode`,`city`,`state`,`community` FROM `dataset` WHERE `city` LIKE :city GROUP BY `city` LIMIT 100;
Funktioniert dein Select in PHPmyadmin ?
Wie nutzt du LIKE wenn du keine wildcards nutzt ?
Btw. eine Spalte primary_key zu nenen ist nicht so schön^^
Ups mein fail.. bin aktuell nicht so ganz da...
Naja bekommst du bei PHPmyadmin den die Städte angezeigt ?
Ja bekomme die angezeigt , wenn ich Group by weglasse zeigt er alles gut an. Bei meiner API werden Städte öfters angezeigt ich möchte den User ja nicht 10 mal Hamburg anzeigen lassen deswegen habe ich die Namen "eindeutig" gemacht mit Group by damit die Namen nicht mehrmals angezeigt werden sondern nur einmal
Ja bekomme die angezeigt , wenn ich Group by weglasse zeigt er alles gut an. Bei meiner API werden Städte öfters angezeigt ich möchte den User ja nicht 10 mal Hamburg anzeigen lassen deswegen habe ich die Namen "eindeutig" gemacht mit Group by damit die Namen nicht mehrmals angezeigt werden sondern nur einmal
Kannst du ein Export der Datenbank bereitstellen oder ein minimal setup wo der Fehler auftritt ?
Es ist kein Fehler, also bzw es kommt keine Fehlermeldung er erkennt einfach den Umlaut nicht.
Hab das Problem aber gelöst.
PHP Code:
SELECT `primary_key`,`zipcode`,`city`,`state`,`community` FROM `dataset` WHERE `city` LIKE BINARY :city GROUP BY BINARY `city` LIMIT 50;
Hab Binary in den folgenden SQL-Code zugefügt.
Da jeder Buchstabe in der Tabelle Stadt großgeschrieben wird, habe ich noch die Funktion ucfirst eingesetzt.
Da z.b h = 104, und H = 72 ist.
Trotzdem verstehe ich immernoch nicht wieso er jetzt ohne Binary den Umlaut nicht erkennt aber naja was solls trotzdem danke für die Hilfe
Naja schön gelöst ist es nicht wirklich..
Und mit Fehler meinte ich das das du keine Stadt rausbekommst..
Wollte nur ein minimal Setup (SQLs und PHP) wo der Fehler auftritt damit man es schnell gegentesten kann.
Btw. wenn du es schon so unschön machst hätte ein COLLATE utf8_bin evtl. auch schon gereicht...
Naja schön gelöst ist es nicht wirklich..
Und mit Fehler meinte ich das das du keine Stadt rausbekommst..
Wollte nur ein minimal Setup (SQLs und PHP) wo der Fehler auftritt damit man es schnell gegentesten kann.
Btw. wenn du es schon so unschön machst hätte ein COLLATE utf8_bin evtl. auch schon gereicht...
Ist unschön aber hatte keine andere Option, nichtmal bei google hab es dieses thema.
Hab im Anhang hochgeladen falls du mal testen willst, musst halt nur noch bei config deine DB anpassen.
Ist unschön aber hatte keine andere Option, nichtmal bei google hab es dieses thema.
Hab im Anhang hochgeladen falls du mal testen willst, musst halt nur noch bei config deine DB anpassen.
Habe es mal kurz getestet und wenn du
Code:
;charset=UTF8
beim erzeugen von PDO nutzt sollte es gehen.
Beispiel:
Code:
<?php
header('Content-Type: text/html; charset=utf-8');
$pdo = new PDO('mysql:host=sql7.freemysqlhosting.net;dbname=sql7271086;charset=UTF8', 'sql7271086', 'RJK8HU9jP5');
$sql = "SELECT * FROM dataset WHERE city LIKE 'Bünde%' GROUP BY city";
echo '<pre>';
foreach ($pdo->query($sql) as $row) {
var_dump($row) . "<br>";
}
echo '</pre>';
?>
Was je nachdem was für eine Kollation du hast noch auftreten kann ist das die Umlaute wie folgt erkannt werden:
ä => a
ü => u
ö => o
Sprich wenn du nach Müller ODER nach Muller suchst würdest du beides bekommen.
Um den "Fehler" zu behben kannst du einfach eine andere Kollation nutzen, z.B. utf8_swedish_ci oder auch utf8_german2_ci.
P.s. die Zugangsdaten im PHP-Code sind extra drin, die Datenbank ist eine schnell erstelle Testdatenbank
beim erzeugen von PDO nutzt sollte es gehen.
Beispiel:
Code:
<?php
header('Content-Type: text/html; charset=utf-8');
$pdo = new PDO('mysql:host=sql7.freemysqlhosting.net;dbname=sql7271086;charset=UTF8', 'sql7271086', 'RJK8HU9jP5');
$sql = "SELECT * FROM dataset WHERE city LIKE 'Bünde%' GROUP BY city";
echo '<pre>';
foreach ($pdo->query($sql) as $row) {
var_dump($row) . "<br>";
}
echo '</pre>';
?>
Was je nachdem was für eine Kollation du hast noch auftreten kann ist das die Umlaute wie folgt erkannt werden:
ä => a
ü => u
ö => o
Sprich wenn du nach Müller ODER nach Muller suchst würdest du beides bekommen.
Um den "Fehler" zu behben kannst du einfach eine andere Kollation nutzen, z.B. utf8_swedish_ci oder auch utf8_german2_ci.
P.s. die Zugangsdaten im PHP-Code sind extra drin, die Datenbank ist eine schnell erstelle Testdatenbank
Hab die Kollation: utf8_german2_ci verwendet und es klappt. Danke dir vielmals^^
"Facebook Like Server" in Select Server Window 07/05/2012 - Metin2 Private Server - 0 Replies Hi :)
I'm from Poland.
I've one big problem, which I can't solve.
I would like to, that on my server in select server window been a facebook button.
I've made this button like this:
http://img404.imageshack.us/img404/9379/fcaogxy.j pg
## FacebookLikeServer
{
[HELP][SQL] SELECT * FROM `mob_proto`; 05/31/2012 - Metin2 Private Server - 2 Replies Hi Epvp.
I know I dont get any answer from you german guys... but lets try for the 8000000000th time.. and see if there is any luck
I got a problem with Mysql..
I can't add new mobs with the Query I got here...
I have tried everything... but nothing works.
INSERT INTO `mob_proto` VALUES ('2651', 'Schlangengott', Schlangengott1, '2', '0', '0', '91', '', '', '0', 'HUMAN', '', '0', '', '0', '100', '9', '56', '0', '900', '1700', '30000', '4', '6', '1000000', '2000000', '625000', '60',...