Anzeige

mySQL Suchfeld mit Umlaut - Keine Ausgabe

mySQL Suchfeld mit Umlaut - Keine Ausgabe | PSD-Tutorials.de

Erstellt von g0rke, 17.04.2010.

  1. g0rke

    g0rke ***

    Dabei seit:
    18.03.2004
    Beiträge:
    62
    Geschlecht:
    weiblich
    Ort:
    Löhne
    Software:
    Photoshop CS2+3
    Kameratyp:
    Canon D10
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    Hallo zusammen,

    ich habe leider keine Ahnung von PHP und benötige dringend Hilfe.
    Habe gestern damit angefangen für einen Kollegen zwei mySQL Abfragen zu erstellen, welche nach langem hin & her auch 'fehlerfrei' funktioniert.

    Das Problem liegt anscheinend in der Ausgabe.

    Abfrage 1:
    PHP:
    1.  
    2. // WAS Variable setzen:
    3. $wo = $_POST['WO'];
    4.  
    5. //Abfrage
    6. if ( !empty ($_POST['WO']))
    7. {
    8. $abfrage3 = "SELECT * FROM Kundendaten WHERE Ort LIKE '$wo%'";
    9. $ergebnis3 = mysql_query($abfrage3)
    10.     OR die("Error: $abfrage3 <br>".mysql_error());
    11. while($row = mysql_fetch_object($ergebnis3))
    12.    {
    13.    echo "$row->Vorname $row->Nachname, $row->Ort<br>";
    14.    }
    15. }
    16. else
    17.  
    18. echo ""; // bleibt leer, damit keine Ausgabe erscheint, bevor Submit gedrückt wurde.
    19.  
    ---
    Erschlagt mich bitte nicht, auch wenn der Code wahrscheinlich schon an Körperverletzung grenzt.
    Ich habe die halbe Nacht im Internet rumgesucht und mir irgendwas zusammen gefuscht und war froh, dass es überhaupt funktionierte ;)


    Probleme gibt es sobald im 'Ort' Umlaute auftauchen.
    Ich Trage in das Suchfeld "Löhne" ein und er gibt mir keinen Datensatz aus. Obwohl 3 Stück vorhanden sind.
    Ich hab jetzt schon gegoogelt und versucht die Kollation umzustellen (natürlich ohne Ahnung was ich genau mache...)




    Nutze phpMyAdmin - 2.11.2.1

    Eigenschaft von dem Feld 'Ort'
    -Typ: varchar
    -Kollation: utf8_german1_ci (Anfangs utf8_swedish_ci - wie der Rest der Felder auch noch)



    Habe die Kollation nur umgestellt,da er trotzdem _ci - die Groß/Kleinschreibung beachtet hat und nicht ausgegeben hat,was es sollte.




    Bitte um Hilfe. Wenn möglich genau beschreiben was ihr meint - sonst rall ich das sicher nicht *gg*

    Grüße!
     
    #1      
  2. AlexanderBo

    AlexanderBo Gesperrt

    Dabei seit:
    09.04.2009
    Beiträge:
    425
    Geschlecht:
    männlich
    Ort:
    im Tor zur Welt ;-)
    Software:
    Notepad++ / CS4
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    AW: mySQL Suchfeld mit Umlaut - Keine Ausgabe

    stell ma um auf utf8_general_ci

    und pack in deine db-connect:

    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET 'utf8'");
     
    #2      
  3. g0rke

    g0rke ***

    Dabei seit:
    18.03.2004
    Beiträge:
    62
    Geschlecht:
    weiblich
    Ort:
    Löhne
    Software:
    Photoshop CS2+3
    Kameratyp:
    Canon D10
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    AW: mySQL Suchfeld mit Umlaut - Keine Ausgabe

    Habe jetzt das Feld "Ort" als utf8_general_ci eingestellt. (oder die kompletten Felder???)

    Sobald ich
    PHP:
    1.  
    2. mysql_query("SET NAMES 'utf8'");
    3. mysql_query("SET CHARACTER SET 'utf8'");
    4.  
    in meine config.php schreibe, spuckt mir die Seite beim Aufruf gleich diesen Fehler Code raus:

    Code (Text):
    1.  
    2. Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /users/vmg/www/web/db/config.php  on line 11
    3.  
    4. Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /users/vmg/www/web/db/config.php on line 11
    5.  
    6. Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /users/vmg/www/web/db/config.php on line 12
    7.  
    8. Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /users/vmg/www/web/db/config.php on line 12
    9.  
    Damit kann ich jetzt nichts anfangen. Was hat das zu bedeuten?
     
    #3      
  4. AlexanderBo

    AlexanderBo Gesperrt

    Dabei seit:
    09.04.2009
    Beiträge:
    425
    Geschlecht:
    männlich
    Ort:
    im Tor zur Welt ;-)
    Software:
    Notepad++ / CS4
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    AW: mySQL Suchfeld mit Umlaut - Keine Ausgabe

    mach alle felder auf ut8_general_ci - warum sich gedanken machen welches feld welchen wert annehmen kann ;-)

    was steht denn in zeile 11 odda 12?

    und es steht doch in der fehlermeldung: using password: NO

    wann wird das set aufgerufen¿
    vllt postest du mal deine config.php ;-)

    grundsätzlich sollte man die connection zur db nur laden wenn gebraucht -
    uuund testen tut mans nit unter xampp sondern im inet -
    da xampp auch nur unter den unzugänglichkeiten von win zu "leiden" hat.
     
    #4      
  5. g0rke

    g0rke ***

    Dabei seit:
    18.03.2004
    Beiträge:
    62
    Geschlecht:
    weiblich
    Ort:
    Löhne
    Software:
    Photoshop CS2+3
    Kameratyp:
    Canon D10
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    AW: mySQL Suchfeld mit Umlaut - Keine Ausgabe

    Ok, hab jetzt alle Felder auf uft8 geändert!

    Hier die config.php:
    PHP:
    1.  
    2. <?php
    3.  
    4. $mysqlhost="localhost"; // MySQL-Host angeben
    5.  
    6. $mysqluser="vmg_test"; // MySQL-User angeben
    7.  
    8. $mysqlpwd="flitzpiepe"; // Passwort angeben
    9.  
    10. $mysqldb="vmg_test"; // Gewuenschte Datenbank angeben
    11.  
    12. mysql_query("SET NAMES 'utf8'");
    13. mysql_query("SET CHARACTER SET 'utf8'");
    14.  
    15.  
    16.  ?>
    17.  
    Lesen kann ich zwar auch etwas, aber wohl nicht richtig deuten, das Passwort ist ja eingetragen..?!


    //edit:
    Und ich habe das ganze im Web getestet und nicht lokal per xampp, weil ich zufaul war das zu installieren :p
     
    Zuletzt bearbeitet: 18.04.2010
    #5      
  6. AlexanderBo

    AlexanderBo Gesperrt

    Dabei seit:
    09.04.2009
    Beiträge:
    425
    Geschlecht:
    männlich
    Ort:
    im Tor zur Welt ;-)
    Software:
    Notepad++ / CS4
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    AW: mySQL Suchfeld mit Umlaut - Keine Ausgabe

    bevor du die

    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET 'utf8'");

    aufrufst musst du natürlich auch connecten ;-)

    a lá

    $link = @mysql_connect($mysqlhost, $mysqluser, $mysqlpwd);


    du solltest dir mal etwas mehr basiswissen anlesen...
     
    #6      
  7. g0rke

    g0rke ***

    Dabei seit:
    18.03.2004
    Beiträge:
    62
    Geschlecht:
    weiblich
    Ort:
    Löhne
    Software:
    Photoshop CS2+3
    Kameratyp:
    Canon D10
    mySQL Suchfeld mit Umlaut - Keine Ausgabe
    AW: mySQL Suchfeld mit Umlaut - Keine Ausgabe

    Danke für die Antwort.

    Puh, jetzt fällt mir das gerade erst auf. Da dort nichts mit connect steht..... Bin wohl davon ausgegangen dass er verbunden ist, wenn er die Abfrage durchführt und ausgibt... Peinlich xD

    Ich schau nachher mal nach und hoffe das es dann klappt!


    //edit:
    Ich hatte vergessen die Connectionen mit in die config.php zu übernehmen... Weil ich sie im nachhinein includet habe *g*

    Danke, Danke, Danke - Klappt jetzt alles... Spuckt mir die Umlaute schön aus so wie es soll :D:D:D
     
    Zuletzt bearbeitet: 18.04.2010
    #7      
Seobility SEO Tool
x
×
×