Antworten auf deine Fragen:
Neues Thema erstellen

PHP und SQL Insert Codierungs Problem

Blackson1c

Noch nicht viel geschrieben

Hi Jungs ich weiß nicht mehr weiter, vielleicht kennt einer von euch die Lösung dafür.

Und zwar vollgendes
Code:
function insert($chosenForm){
$text = "üäö";
echo "TEXT: ".$text;
$sql = "INSERT INTO `normen-db`.`normen` (`ID`, `Kategorie_ID`, `Status_ID`, `Land_ID`, `Projekt_ID`, `Datum`, `Code`, `Titel`, `Anwendungsbereich`, `Vorschlaege`, `Bearbeitungsstand`)";
$sql.= "VALUES (NULL, ".$chosenForm['kategorie'].", ".$chosenForm['status'].", ".$chosenForm['land'].", ".$chosenForm['projekt'].", '".$chosenForm['datum']."', '".$text."', '".urldecode($chosenForm['titel'])."', '".$chosenForm['anwendung']."', '".$chosenForm['vorschlaege']."', '".$chosenForm['stand']."');";


$result = mysql_query($sql);
    if($result){
        echo "<font color='green'>Einf&uuml;gen erfolgreich abgeschlossen </font><br/>";
    }
    else{
        error_log("### QUERY ERROR: ### query: ".$sql);
        error_log("### QUERY ERROR: ### error no: ".mysql_errno());
        error_log("### QUERY ERROR: ### error: ".mysql_error());
        die("<font color='red'>Das Einf&uuml;gen konnte nicht abgeschlossen werden</font> <br/>");
    }
Wenn ich diesen Code ausführe krieg ich in der Datenbank Problemme mit der darstellung. Und zwar Wird die Viriable $text mit den Sonderzeichen üöä richtig gespeichert.
Aber der Text der Übergeben wird durch die ChosenForm Array wenn drine irgendwelche ÜÄÖ vorkommen kriegt ich solche Zeichen Ã?Ã?Ã?Ã?Ã?Ã?Ã?Ã? in der Datenbank. Das wandelt er aber nicht mehr zurück beim Abfragen der Datenbank.

Ich weis das es was mit der Codierung zutun hat, aber ich krieg es nicht hin das er es sauber in die Datenbank schreibt

hat jemand einen Tip für mich ?
 

AW: PHP und SQL Insert Codierungs Problem

du kannst vor die ganzen variabeln, die du in die db einlist ein "htmlentities();" setzten, also z.B.
PHP:
htmlentities($chosenForm['status'])
und danach, wenn du den inhalt wieder auslist einfach ein "html_entity_decode();" davor setzen, wie z.B.
PHP:
echo html_entity_decode($text);

mfg: MaedeG
 
AW: PHP und SQL Insert Codierungs Problem

Das kommt darauf an welche Kodierung du überall verwendest. Nimm nach Möglichkeit überall UTF-8 - also in php-Dateien und auch in der Datenbank.
Wenn nach den öffnen der Datenbank dein erster Befehl

Code:
    [B]$sql = "set names 'utf8'"[/B];

lautet solltest du nirgends Probleme haben.

Gruß
Enrico
 
AW: PHP und SQL Insert Codierungs Problem

du kannst vor die ganzen variabeln, die du in die db einlist ein "htmlentities();" setzten, also z.B.
PHP:
htmlentities($chosenForm['status'])
und danach, wenn du den inhalt wieder auslist einfach ein "html_entity_decode();" davor setzen, wie z.B.
PHP:
echo html_entity_decode($text);
mfg: MaedeG


das mit den htmlentities würd ich gern vermeiden, da es den Text im grunde ändert. Ich würde lieber den reinen Text behalten.

Das mit
Code:
[B]$sql = "set names 'utf8'"[/B];
Wo genau müsst ich das machen ? (In der dbconfig wo ich direkt zu db connecte ?)
 
AW: PHP und SQL Insert Codierungs Problem

Du erstellst doch "nur" einen String mit dem du die DB einen Befehl erteilst.

Das setzt du dann davor...

Für ein Quick and Dirty Script habe ich das als Init-Wert eingetragen und danach nur noch $sql .= "weitere SQL-Anweisungen" benutzt
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
119.000
Beiträge
1.540.303
Mitglieder
68.229
Neuestes Mitglied
Franz59
Oben