[Gelöst] MySQL und PHP und ÄÖÜ / [Edit 3]

  • Android

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [Gelöst] MySQL und PHP und ÄÖÜ / [Edit 3]

    Hallo,

    ich bin mit meiner App inzwischen schon ziemlich weit.
    Nun taucht das nächste Problem auf, wo ich nichtmehr weiter weiß.

    Wenn ich im Suchfilter nach einer ID via Android suche, klappt alles, wird alles richtig angezeigt - auch Ä Ö und Ü.
    Wenn ich nun aber über Android spezifisch nach einem Vor- oder Nachnamen (sprich nach einem String) suche, dann gibt er die Fehlermeldung "out of range" an, da es in Verbindung mit MySQL und PHP wohl irgendwo Probleme gibt. Wenn ich das selbe nun auf dem PC mache, dann klappt wieder alles und es wird alles richtig angezeigt.

    Die Fehlermeldung kommt nur auf dem Android Handy.
    Kann es sein, dass es am browser des Smartphones liegt, oder ist es ein gaaaanz anderes Problem?
    Nebenbei: Welchen Browser verwendet ein Android 4.4.2 Handy standardgemäß? - Da wird nur "Internet" angezeigt.

    Edit 1:
    Die Fehlermeldung wäre weg, ich habe in der MySQL Datenbank das Charset auf utf-8 gesetzt. Aber auch wenn der range-error nichtmehr kommt, nun erscheint die selbsterstellte Debugmessage "Fehler beim Laden", welchen ich eingebaut habe, wenn ein Datensatz (z.B. eine ID nach der man sucht) nicht exestiert. Ich habe als Vornamen "Test" und als Nachnamen "Ö" genommen. Suche ich jetzt nach "Ö" erscheint meine Debugmessage "Fehler beim Laden" - er findet also vom Android-Handy aus nicht das Ö, kann es aber inzwischen dank der umgestellten Kodierung zumindest richtig auslesen.

    Edit 2:
    Problem gelöst (Siehe 3. Post), neues Problem aufgetreten (Ebenfalls 3. Post).

    Liebe Grüße
    Killian

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von icqgamer ()

  • Hast du schon versucht, die Umlaute mit htmlspecialchars zu konvertieren und auch so in der Datenbank zu speichern? Falls du die Ausgabe nicht mit HTML machst kannst du sie mit htmlspecialchars_decode wieder in Buchstaben umwandeln.

    © 2008 by Teamgrill Productions
  • Hallo, danke erstmal für deine Hilfe. Ich habe das Problem wiefolgt gelöst (vorhin erst):

    oben im PHP-Dokument: header("Content-type:text/html; charset=utf-8");
    Nach der Auswahl der Database: mysql_query("SET NAMES 'utf8'");

    Bei der Definierung der Variablen: $var1 = mysql_real_escape_string(utf8_encode($_GET['var1']));
    Dort habe ich das utf8_encode eingefügt. Jetzt findet er sogar Namen mit ÄÖ und Ü im Namen problemlos.

    Nun habe ich nurnoch ein paar Stack overflow Errors, können diese eventuell auftauchen, wenn es in der Datenbank zu viele mit ein und den selben Namen gibt, dass er nur eine maximale Anzahl "stapeln" kann? Das könnte ich mir nicht vorstellen, da es dieses Mal andersrum läuft: Auf Android funktioniert es, aber auf Windows nicht.

    Würde mich sehr auf weitere Antworten freuen.

    #Edit 3: Error ist weg - fragt mich nicht wie und warum. Ich muss wohl vergessen haben, was ich da rumgeschraubt habe :D Auf jeden Fall läuft es nun (bis jetzt). Es kann auch sein, dass der Error bei einer instabilen oder schlechten Internetverbindung zustande kommt.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von icqgamer ()