Charset Html

Dieses Thema im Forum "Programmierung" wurde erstellt von ripehostess54, 13. Februar 2015.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. ripehostess54
    Offline

    ripehostess54

    Registriert seit:
    13. Januar 2015
    Beiträge:
    43
    Ort:
    Dresden
    Ich habe in meinem Html Dunkument eine Suche drinne, die meine Datenbank durchstucht
    Code (Text):
    1.  
    2. <?php
    3.   $debug = false;
    4.   if (!isset($_POST["sn"])) {$_POST["sn"] = "";}
    5.   $sHostname = 'localhost';
    6.   $sPort  = 3306;
    7.   $DatabaseUser = 'root';
    8.   $DBPassword = 'xxx ';
    9.   $DBTable = 'Statistiken';
    10.  
    11.   //SQL Verbindungsaufbau
    12.   $DB_link = mysql_connect("$sHostname:$sPort", $DatabaseUser, $DBPassword)
    13.   or die("Datenbank verbindung: " . mysql_error());
    14.   if ($debug == true) {echo 'Datenbank verbindung aufgebaut<br>';} ## Debug ##
    15.   $Database = 'bedwars';
    16.   mysql_select_db($Database)or die("Datenbank auswahl Fehlgeschlagen: " . mysql_error());
    17.  
    18.   $sn = $_POST['sn'];
    19.  
    20.   if ($sn != "")
    21.   {
    22.   $sqlab = "SELECT * FROM `$DBTable` ";
    23.   $sqlab .= "WHERE `name` LIKE '$sn' ";
    24.   $sqlab .=" ORDER by `name` DESC";
    25.   if ($debug == true) {echo $sqlab.'<br>';} ## Debug ##
    26.   $res = mysql_query($sqlab) or die("Anfrage 1 fehlgeschlagen: " . mysql_error());
    27.   $numb = mysql_num_rows($res);
    28.   if ($debug == true) {echo 'Checke nach Spielerdaten'.$_POST['sn'].'<br>';} ## Debug ##
    29.   if ($debug == true) {echo 'Gefundene Spieler: '.$numb.'<br>';} ## Debug ##
    30.   if($numb >= 1)
    31.   {
    32.   $dsatz = mysql_fetch_assoc($res);
    33.   if ($debug == true) {echo 'Spieler Gefunden'.$_POST['sn'];} ## Debug ##
    34.   echo "<table><tr>";
    35.   echo "<td>Name:</td><td>".$dsatz['name']."</td></tr><tr>";
    36.   echo "<td>SpieleAnzahl:</td><td>".$dsatz['all_games']."</td>";
    37.   echo "<td>Verloren:</td><td>".$dsatz['lost_games']."</td>";
    38.   echo "<td>Gewonnen:</td><td>".$dsatz['won_games']."</td></tr><tr>";
    39.   echo "<td>Kills:</td><td>".$dsatz['kills']."</td>";
    40.   echo "<td>Tode:</td><td>".$dsatz['deaths']."</td>";
    41.   echo "<td>Betten zerstört:</td><td>".$dsatz['destroyed_beds']."</td></tr>";
    42.   echo "</tr></table>";
    43.   }
    44.   else
    45.   {echo 'Spieler nicht Gefunden';}
    46.   }
    47.   ?>
    48.  
    Doch leider wird trotz dem Charset utf-8 das Betten zerstört nicht im Utf8 geschreiben.
     
    #1
  2. 可愛い
    Offline

    可愛い

    Registriert seit:
    19. Mai 2014
    Beiträge:
    654
    Ich seh nirgendwo, dass du auch das richtige Charset setzt, ich seh nichtmal eine HTML Struktur mit <head> und <body> Tag. Außerdem muss die Datei selbst auch als UTF-8 gespeichert werden.

    Davon abgesehen hast du aber eine gravierende Sicherheitslücke in deinem SQL. Informier dich mal über das Thema "SQL Injection".
     
    #2
  3. Spamversender
    Offline

    Spamversender

    Registriert seit:
    9. März 2014
    Beiträge:
    118
    Umlaute und Länderspezifische Zeichen sollten mit dem entsprechendem HTML-Code maskiert werden, das ö z.B. durch &ouml;
    Das hat soweit ich weiß nix mit dem eingestellten Charset zu tun, PHP kennt diese Zeichen nicht.
     
    #3
  4. LanToaster
    Offline

    LanToaster

    Registriert seit:
    12. Juli 2011
    Beiträge:
    20
    Abgesehen davon hast du dein MySQL Username und Passwort mitgepostet. Die sind nun auch erstmal zu ändern.

    Ich kann HTML zwar garnicht. Aber interessanterweise macht meine Website die Umlaute super mit. Kann dazu aber leider nit sagen woran es liegt. (Weil ich kann HTML garnicht, und bastel nur nach dem Vorhandenen Schema meine Website)
     
    #4
  5. 可愛い
    Offline

    可愛い

    Registriert seit:
    19. Mai 2014
    Beiträge:
    654
    Das stimmt nicht.

    Der TE scheint sich für das Problem aber ohnehin nicht länger zu interessieren, von daher macht es wohl auch keinen Sinn weiter Lösungsansätze zu posten.
     
    #5
  6. ripehostess54
    Offline

    ripehostess54

    Registriert seit:
    13. Januar 2015
    Beiträge:
    43
    Ort:
    Dresden
    Ich probiere das mal mit den Umlautrn.
     
    #6
  7. 可愛い
    Offline

    可愛い

    Registriert seit:
    19. Mai 2014
    Beiträge:
    654
    Wenn du die Escapezeichen von HTML verwendest, dann wird das funktionieren, aber UTF-8 nutzt du dann trozdem nicht.
     
    #7
  8. ripehostess54
    Offline

    ripehostess54

    Registriert seit:
    13. Januar 2015
    Beiträge:
    43
    Ort:
    Dresden
    #8
Status des Themas:
Es sind keine weiteren Antworten möglich.