2016-09-27 6 views
1

私はなぜオフラインで私のウェブサイトをオンラインにしたのかわからないが、突然、ウェブサイトにシンボルが表示されず、理由がわからない。それはオフラインで正常に動作しました。本当にMySQLからのウェブサイト全体のシンボルは、データベースのデータを取得

<?php 
$title = 'Baz Building'; 
require_once 'header.php'; 
require_once 'nav.php'; 
?> 
<div class="container"> 
    <h1>Welcome to baz Build by Richard Hayward</h1><br><br> 
    <div class="col-8"> 
     <h2 class="text-center">Houses</h2> 
    </div> 
    <div> 
     <ul class="list-group"> 
     <?php 
     //Get connection details from file 
     require_once'mysqli-con.php'; 
     //Create new connection 
     $conn = new mysqli($hn, $un, $pw, $db); //Create new object, MYSQLI connection 
     if ($conn->connect_error) die ($conn->connect_error); //Display error if failed to connect 


     // Create first query to get all house names for count 
     $query_names = $conn->query('SELECT name FROM house_names'); // Query all names data 
     $num_rows = $query_names->num_rows; // Get the number of rows for loop 

     //Start loop for output of each item 
     for($c = 0 ; $c < $num_rows ; ++$c){ 

      //Query Join 
      $query_names->data_seek($c); 
     $name = $query_names->fetch_array(MYSQLI_NUM); 

      $query = "SELECT house_names.id, house_names.name, houses_has_features.house_names_id, house_types.type, features.feature FROM house_names 
JOIN houses_has_features 
ON house_names.id = houses_has_features.house_names_id 
JOIN house_types 
ON house_types.id = houses_has_features.house_types_id 
JOIN features 
ON houses_has_features.features_id = features.id 
WHERE house_names.name = \"$name[0]\""; 


      $query_join = $conn->query($query); 

     $rows = $query_join->num_rows; 

     echo '<p>'; 

      //Output name and type for each item 
     $first_rows = $query_join->fetch_array(MYSQLI_ASSOC); 
     echo '<li class="list-group-item active">' . $first_rows['name'] . '</li>'; 
     echo '<li class="list-group-item"><b>Type: </b>' . $first_rows['type'] . '</li>'; 
     echo '<li class="list-group-item"><b>Features: </b>'; 
     for($j = 0 ; $j < $rows ; ++$j) //Features loop 
     { 
      $query_join->data_seek($j); 
      $row = $query_join->fetch_array(MYSQLI_NUM); 

      //Output all features for each item 
     echo $row[4] . ', '; 
     }; 
     }; 


     // Close objects 
     $conn->close(); 
     $query_join->close(); 
     $query_names->close(); 


     ?> 
     </ul> 
    </div> 
    </div> 
</body> 
</html> 
+2

ため

感謝を追加しました:)

を示していることをあなたはおそらく、yの非UTF8文字を持っていました私たちのデータベース。データベースのエンコーディングが間違っている可能性があります。 –

+0

おそらくDBです。私はUTF8にページを設定しました – RiCHiE

+0

サーバ接続の照合ドキュメント:UTF8_general_ci – RiCHiE

答えて

2

これだユニコードの記事がある:(

enter image description here 私のheader.phpの

<?php 
header('Content-Type: text/html; charset=UTF-8'); 
echo <<<_END 

<!DOCTYPE html> 
<html> 
<head> 
    <title>$title</title> 
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 
    <link href="bootstrap/css/bootstrap.css" rel="stylesheet"> 
    <link href="bootstrap/css/bootstrap-theme.css" rel="stylesheet"> 
    <link href="style.css" rel="stylesheet"> 
</head> 
<body> 
_END; 

とindex.phpの前に、これはそれを見たことがない上の任意の情報を見つけることができませんでした価値のある読書:The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets

最も重要な事実Abo utエンコーディング

私が説明したことすべてを完全に忘れた場合は、 という非常に重要な事実を覚えておいてください。文字列が の場合、それが使用するエンコーディングを知らなくても意味がありません。 頭を砂の中にくっつけ、「平らな」テキストがASCIIのふりをしていることはもうありません。

平文のようなものはありません。

+0

私はこれについてのデータを見つけることができませんでしたありがとうみんながありますが、これは助けをありがとうからどこから来ていたかわからないので、私は本当にちょうど少なくとも正しい方向に指摘する必要がたくさんあるようです – RiCHiE

1

(リンクのおかげで)その記事を読んだ後、私はutf8mb4_binするデータベースを切り替えると記号を持つエントリを取り出したように、相対パスをチェックして、URLがWWW

+0

私はwwwを試したが、違いはないようだ。 – RiCHiE

0

[OK]をすることなく、WWWとOTで、再びに戻ってそれらを置くのシンボルが、今、私はまた私のヘッダにすべてのヘルプみんな:)

関連する問題