php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.09.2010, 21:04  
Erfahrener Benutzer
 
Benutzerbild von estebu
 
Registriert seit: 11.02.2009
Beiträge: 193
PHP-Kenntnisse:
Anfänger
estebu befindet sich auf einem aufstrebenden Ast
estebu eine Nachricht über Skype™ schicken
Standard Autocomplete und Charset

Ich hoffe, ich bin hier in der richtigen "Abteilung" gelandet.

Ich nutze eine Autocomplete-Funktion mittles jQuery.
http://code.google.com/p/jquery-auto...source/browse/

Das erste Problem, dass ich damit hatte, habe ich bereits lösen können.
Es bestand darin, dass der übergebene String für das Textfeld/die Autocomplete Liste immer nur Fragezeichen anstatt Umlauten darstellte.
Lösung dafür: in der "search.php"
PHP-Code:
header('Content-Type: text/html; charset=iso-8859-1'); 
eintragen.

Nun werden auch alle Umlaute im Textfeld mit der Autocomplete-Liste richtig dargestellt.
Die Autocomplete-Funktion funktioniert ja dergestalt, dass man einen Begriff in das Textfeld einträgt und einem dann passende Ergebnisse in einer Liste darunter angezeigt werden. Das funktioniert auch ganz wunderbar, außer, wenn Umlaute ins Spiel kommen.
Die Übergabe der Umlaute an die "search.php" scheint also irgendwie nicht richtig ausgewertet zu werden.
Hat jemand von Euch da bereits Erfahrungen gemacht?
Ich poste hier noch die "search.php".
Gruß estebu

PHP-Code:
header('Content-Type: text/html; charset=iso-8859-1');
require_once(
'../Connections/connect.php');
error_reporting(E_ALL);
$q '';

if (isset(
$_GET['q'])) {
    
$q strtolower($_GET['q']);
}
if (!
$q) {
    return;
}


mysql_select_db($database_connect$connect); 
$query_schulen "SELECT schul_id, name, strasse, ort FROM Schulen";
$schulen mysql_query($query_schulen$connect) or die(mysql_error());
$row_schulen mysql_fetch_array($schulen);
$totalRows_schulen mysql_num_rows($schulen);
while (
$row_schulen mysql_fetch_assoc($schulen)) {
$items[] = array($row_schulen['name'],$row_schulen['strasse'],$row_schulen['ort'],$row_schulen['schul_id']);
}

//print_r($items);

foreach ($items as $key => $value) {
    
$combined = ($value[0].', '.$value[1].', '.$value[2]);
     if (
strpos(strtolower($combined), $q) !== false)  {
    
    
    echo 
"$combined|$value[3]\n";

      
   }   

estebu ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.09.2010, 09:32  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

was für Textformat hast du in der Datenbank genau ? (Collation) ?

und was klappt dabei nicht ?
eagle275 ist offline   Mit Zitat antworten
Alt 20.09.2010, 18:48  
Erfahrener Benutzer
 
Benutzerbild von estebu
 
Registriert seit: 11.02.2009
Beiträge: 193
PHP-Kenntnisse:
Anfänger
estebu befindet sich auf einem aufstrebenden Ast
estebu eine Nachricht über Skype™ schicken
Standard

Also die Sprache von phpMyAdmin ist auf German (de-iso-8859-1) angelegt,
aber die Collation ist bei 1und1 nicht raus zu finden. Aber ich schätze mal, sie wird latin1_general_ci (ist glaube ich als Standard voreingestellt beim Anlegen einer neuen Datenbank) sein.
Das ist irgendwie eigenartig, denn vor einiger Zeit konnte ich noch die genaue Collation sehen und sie auch ändern... (??)
Was nicht "funktioniert" hatte ich ja eingangs bereits beschrieben:
Bei der Eingabe des Suchbegriffes in das Autocomplete-Feld werden keine Umlaute akzeptiert. Sobald ein Umlaut ins Spiel kommt, bleibt die Liste der gefilterten Ergebnisse leer.
estebu ist offline   Mit Zitat antworten
Alt 20.09.2010, 19:04  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von estebu Beitrag anzeigen
Also die Sprache von phpMyAdmin ist auf German (de-iso-8859-1) angelegt,
aber die Collation ist bei 1und1 nicht raus zu finden. Aber ich schätze mal, sie wird latin1_general_ci (ist glaube ich als Standard voreingestellt beim Anlegen einer neuen Datenbank) sein.
Auf der Seite nach dem Anmelden gibt's den Punkt: „Zeichensatz / Kollation der MySQL-Verbindung“ (o.s.ä.)

Zitat:
Was nicht "funktioniert" hatte ich ja eingangs bereits beschrieben:
Bei der Eingabe des Suchbegriffes in das Autocomplete-Feld werden keine Umlaute akzeptiert. Sobald ein Umlaut ins Spiel kommt, bleibt die Liste der gefilterten Ergebnisse leer.
Na dann finde doch erst mal raus, was beim serverseitigen Script ankommt.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 20.09.2010, 19:14  
Erfahrener Benutzer
 
Benutzerbild von estebu
 
Registriert seit: 11.02.2009
Beiträge: 193
PHP-Kenntnisse:
Anfänger
estebu befindet sich auf einem aufstrebenden Ast
estebu eine Nachricht über Skype™ schicken
Standard

Zitat:
Auf der Seite nach dem Anmelden gibt's den Punkt: „Zeichensatz / Kollation der MySQL-Verbindung“ (o.s.ä.)
Leider gibt es diesen Punkt nicht (siehe screenshot01.jpg - das ist das Fenster direkt nach der Anmeldung)

Zitat:
Na dann finde doch erst mal raus, was beim serverseitigen Script ankommt.
Würde ich ja gerne, aber ich weiss eben nicht, wo ich die Daten "abfangen" könnte - Javascript ist nicht so meine Stärke....
Daher hatte ich gehofft, dass jemand hier bereits Erfahrungen mit dem jQuery-Autocomplete hat...
Miniaturansicht angehängter Grafiken
autocomplete-und-charset-screenshot01.jpg  
estebu ist offline   Mit Zitat antworten
Alt 20.09.2010, 19:23  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

JavaScript arbeitet intern immer mit Unicode, und encodeURIComponent kodiert die Daten vor dem Absenden in UTF-8.

Entweder tauschst du das durch escape aus (das kodiert nach ISO-8859-1), oder du müsstest im serverseitigen Script die Daten erst mal wieder darin umwandeln, wenn du diese Kodierung verwendest.


Irgendetwas anderes als konsequent UTF-8 zu verwenden, ist für heutige Webanwendungen eigentlich nicht empfehlenswert. Du solltest dich langsam mal von ISO-xy lösen, und grundsätzlich UTF-8 verwenden, gleich von Anfang an, wenn du ein Projekt aufbaust.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 21.09.2010, 08:51  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

hm .. das mit phpmyadmin ist in der Tat merkwürdig - liegt aber bestimmt an Einstellungen von 1 & 1 ....

bei mir sieht das nämlich in der Struktur-Ansicht einer Tabelle so aus :
Code:
vermerk | varchar(255) | utf8_general_ci | .........
eagle275 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Default charset für Funktionen MasterQ PHP-Fortgeschrittene 6 06.01.2011 10:03
[Erledigt] Leidiges Thema Umlaute bzw. Charset HerrFrie PHP Tipps 2010 17 10.09.2010 13:09
Seite parsen Charset unbekannt. omex PHP Tipps 2010 3 17.08.2010 09:48
Umlaute und charset Erdbeerkuchen PHP Tipps 2010 3 15.03.2010 16:57
CHarset und Probleme mit IE KeKs0r HTML, Usability und Barrierefreiheit 10 26.01.2010 21:59
UTF-8 und charset iso-8859-1 david99 PHP Tipps 2010 10 19.01.2010 19:34
Affenformular - charset Problem (?) pjotr PHP Tipps 2009 3 31.10.2009 19:13
[Erledigt] Ajax Programmierung (Autocomplete) Geronimo2000 Beitragsarchiv 1 14.08.2009 17:41
charset Problem mit xmlrpc_decode HeckMc PHP-Fortgeschrittene 1 10.08.2009 18:04
JQuery + Autocomplete mit htmlentities saduccm JavaScript, Ajax und mehr 4 13.05.2009 09:15
Ajax Autocomplete Kein Genie JavaScript, Ajax und mehr 16 12.09.2008 12:27
Scriptsuche AJAX AutoComplete mit PHP + JSON PsychoEagle Scriptbörse 5 07.08.2008 13:32
XAMPP, Valider Code (Charset) bei lokaler Prüfung Server, Hosting und Workstations 3 07.11.2005 19:21
PHP, MySQL und der Charset PHP-Fortgeschrittene 6 13.10.2005 21:49
Falscher Pfad zu Mysql charset? PHP Tipps 2005 0 16.02.2005 20:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
jquery autocomplete umlaute, http://www.php.de/javascript-ajax-und-mehr/72021-autocomplete-und-charset.html, jquery autocomplete umlaute iso-8859-1, autocomplete umlaute, jquery autocomplete html entities, php mysql autocomplete, jquery autocomplete fragezeichen, autocomplete suche javascript jquery ajax xampp, autocomplete latin1, umlaute autocompleter, header(\'content-type: text/html; charset=utf-8\'); $q = strtolower( $_get[\q\] ); if (!$q) return;, autocomplete charset, charset php, jquery autocomplete umlaut, ajax autocompleter soll antwort als 8859-1 senden, jquery autocomplete iso, jquery escape utf8, google keine umlaute im eingabefeld, jquery autocomplete sonderzeichen source contentype utf8, umlaute werden bei autocomplete nicht angezeigt

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:57 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum