chrizzTs
Neues Mitglied
Hallo zusammen,
ich habe ein wohl alt bekanntes Problem, bekomme es aber trotz langer inernet recherche nicht behoben.
Ich habe gefühlt alles probiert also hier mein letzter Anlauf.
Ich habe ein Formular in meiner Website, welches mit Hilfe von JQuerry die Felder einliest, an ein Php Skript sendet, welches die Daten dann in eine DB fügt. (Bitte nicht fragen warum über 3 Ecken, muss leider so sein weil die Anforderung so lautet). Die Sonderzeichen werden leider sehr kryptisch in meiner DB dargestellt, rufe ich die Daten jedoch wieder mittels einem php Skript ab, so sieht es alles ganz normal aus.
Hier mein JS Code:
Mein PHP Code sieht dann so aus:
Wie ihr seht habe ich schon versucht das ganze hinzubekommen, jedoch ohne Erfolg:
Die Textfelder meiner DB sind vom Typ: varchar(255) und Kollation utf8_general_ci
Da ich wirklich schon eigentlich alles versucht habe was so im Internet stand (vielleicht auch falsch versucht) hoffe ich dass ihr mir helfen könnt und am besten genau sagt wie der Code aussehen muss.
Vielen Lieben Dank
Lg
Chrstian
ich habe ein wohl alt bekanntes Problem, bekomme es aber trotz langer inernet recherche nicht behoben.
Ich habe gefühlt alles probiert also hier mein letzter Anlauf.
Ich habe ein Formular in meiner Website, welches mit Hilfe von JQuerry die Felder einliest, an ein Php Skript sendet, welches die Daten dann in eine DB fügt. (Bitte nicht fragen warum über 3 Ecken, muss leider so sein weil die Anforderung so lautet). Die Sonderzeichen werden leider sehr kryptisch in meiner DB dargestellt, rufe ich die Daten jedoch wieder mittels einem php Skript ab, so sieht es alles ganz normal aus.
Hier mein JS Code:
Code:
//Gästebuch Eintrag Post und Echo Injection
$( "#guestbookForm" ).submit(function( event ) {
event.preventDefault();
var name = $("input[name='name']").val();
var email = $("input[name='email']").val();
var eingabe = $("textarea[name='eingabe']").val();
var posting = $.post( "addEntry.php", {name:name, email:email, eingabe:eingabe});
posting.done(function( data ) {
$("#replyGuestbookEntry").html(data);
loadData();
});
});
Mein PHP Code sieht dann so aus:
PHP:
<?php
header('Content-type:text/html; charset=utf-8');
$name = $_POST['name'];
$email = $_POST['email'];
$post = $_POST['eingabe'];
if(!empty($name) and !empty($email) and !empty($post) and filter_var($email, FILTER_VALIDATE_EMAIL))
{
$con = mysqli_connect("localhost", "admin", "admin", "guestbook");
mysqli_query("SET NAMES 'UTF8'", $con);
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql = "INSERT INTO entries (name, email, post) VALUES ('$_POST[name]', '$email', '$post')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "Eintrag wurde versandt!";
mysqli_close($con);
} else{
echo "<p style=\"color:red\">Eingabefehler, versuchen Sie es erneut.</p>";
}
?>
Wie ihr seht habe ich schon versucht das ganze hinzubekommen, jedoch ohne Erfolg:
PHP:
mysqli_query("SET NAMES 'UTF8'", $con);
Die Textfelder meiner DB sind vom Typ: varchar(255) und Kollation utf8_general_ci
Da ich wirklich schon eigentlich alles versucht habe was so im Internet stand (vielleicht auch falsch versucht) hoffe ich dass ihr mir helfen könnt und am besten genau sagt wie der Code aussehen muss.
Vielen Lieben Dank
Lg
Chrstian