ホームページ  >  記事  >  バックエンド開発  >  掲示板の質問とヘルプ

掲示板の質問とヘルプ

WBOY
WBOYオリジナル
2016-06-23 14:10:59909ブラウズ

まず文字化けについて質問させてください
my.iniに[client]default-character-set=utf8 [mysqld]default-character-set=utf8を設定してからwampを再起動すると、phpmyadminが接続できません、つまり#2002です。そのソケット エラー メッセージが表示され、my.ini に加えた変更を元に戻しましたが、依然として接続できませんでした (変更を元に戻せば問題ないはずです?? 質問 1) 最後に、localhost を 127.0 に変更しました。 .0.1 のみ正常に戻りました
質問 2: 上記の操作後


最後の質問


1. conn ファイル

<?php   $conn = mysql_connect("localhost","root","") or die("Can't connect database: ".mysql_error());if($conn)   echo "链接成功!";   mysql_select_db("liuyan");   mysql_query("set names 'gbk'");?>


2. 入力ファイル
<form name = "msgform" method = "post" action = "write.php" enctype = "multipart/form-data" onsubmit = "return checkMessage()">//javascript略去了<table width = "64%" border = "0" cellspacing = "1" cellpadding = "3" bgcolor = "#66CCFF" align = "center"><tr><td width = "48%">用 户:  <input type = "txet" name = "username"></td> </tr> <tr><td colspan = "2">标 题:<input type = "text" name = "title" size = "60" maxlength = "50"></td></tr><tr><td colspan = "2"><textarea name = "content" rows = "10" cols = "100"></textarea></td></tr><tr><td><div align = "right"><input type = "submit" name = "sub" value = "提交"></div></td><td><input type = "reset" name = "Rewrite" value = "重写"></td></tr> </table></form>


3. ファイルの書き込み
<?phpinclude("conn.php");if(isset($_POST['username'])){   $username = $_POST['username'];   $title = $_POST['title'];   $content = $_POST['content'];   $sql = "insert into easy values('$username','$title','$content',now())";   mysql_query($sql) or die("插入失败: ".mysql_error());}?><?phpinclude("conn.php");   $rowsPerPage = 10;   $row = mysql_fetch_array(mysql_query("select count (*) as c from easy"));         //查询总记录数...这点书上看的,不太懂,求解释   $rows = $row['c'];                      //得到记录数      /*     $a = "select * from easy";   $b = mysql_query($a);   $rows = mysql_num_rows($b);这个可以么?  另外这个和上面那个有什么区别??      */      $pages = ceil($rows/$rowsPerPage);     //计算页数   $curPage = 1;   if(isset($_REQUEST['curPage']))      $curPage = $_REQUEST['curPage'];   $sql = "select * from easy order by posttime" ." limit ".($curPage - 1) * $rowsPerPage." ,$rowsPerPage";   $result = mysql_query($sql) or die(mysql_error());   while($row = mysql_fetch_array($result)){   echo "<table width = 90% align=center cellpadding=5 cellspacing=1 bgcolor=blue>";   echo "<tr>";   echo "<td rowspan = 2 width = 25% bgcolor = white>";   echo "<tr>标题:<?=$row[title]?></tr>";   echo "<li>用户:<?=$row[username]?>";   echo "<li>  <?= $row[posttime]?>";   echo "</td>";   echo "<td>内容:<?= $row[content]?></td>";   echo "</tr>";   echo "</table>";   echo "<br>";   }   //分页链接     echo "<div align = center>";    for($i = 1;$i<$pages;$i++)    echo "<a href = 'write.php?curPage = $i'>$i</a>$nbsp; ";    echo "</div>";?>

あなたのすべてを私にくださいポイント


ディスカッションへの返信 (解決策)

mysql_query("select count (*) as c from easy") または die(mysql_error()); // このように報告されるエラーは何ですか?

1.結果が不明な場合 構成情報を勝手に変更しないでください

2. データベースサービスは公開されており、全体の構成を変更すると他のアプリケーションの使用に影響を与えることは避けられません
3. 構成情報の変更は、単に影響を受けるだけです変更後のパフォーマンスに影響を与えます。変更時刻より前に保存されたデータは問題を引き起こす可能性があります
4. ALTER を使用して文字セットを変更すると、コンテンツの文字セットも同時に変換できるという人もいます。しかし、少なくとも私が使用している mysql では不可能です

問題の解決に役立つように、元の設定ファイルを復元することをお勧めします
フィールドの文字セットを設定し、set names コマンドを適切なタイミングで使用することは、正しいアプローチ
なぜなら、プロジェクトは既存の環境で実行される可能性が高いからです。プログラムが外部構成に依存している場合、その結果が考えられます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。