アフィリエイト・ポータルネット ホーム

アフィリエイト・コミュニティ

チャット中のユーザー


ログイン

ユーザ名:

パスワード:


パスワード紛失

新規登録

オンライン状況

25 人のユーザが現在オンラインです。 (15 人のユーザが フォーラム一覧 を参照しています。)

登録ユーザ: 1
ゲスト: 24

vanhealsing, もっと...

Re: こまりました・・・

aloha1
(長老)
投稿日時: 2007-8-21 12:25
じっくり検証してみないとなんともいえないですが・・・・
私も暗記しているわえではないので・・・・笑

先ず、POST 周りですね。

確実に取れているのかどうか。

f($_POST['submit']){
 :
 :
 extract($_POST); する前に、処理対象のデータがちゃんと格納されいてはじめて取り出したほうがいいです。

次に、
sql関連関数の戻り値をとって、関数が正常に終了したかどうかを見ないといけません。

場合によっては、エラーなのに処理を続けてシステムに致命的なダメージを与えることもありえますしね。

$res = mysql_connect('×  ・・・

のように捕って、$resの値でチェックしてはいかがでしょう。

どこまでが正常に動作しているのかを、切り分けないと、全体的に見てもわかりません。

ファイルやデータベースなどのオープン処理は、かならずエラー処理をすべきです。これはプログラミング言語に関係なくしたほうがいいですね。

ここが問題と言う指摘でなくてスミマセンが、このようにしていけば切り分けられます。


 

Re: こまりました・・・

のぼ
(一人前)
投稿日時: 2007-8-21 13:32
http://jp.php.net/mysql_errno
mysql_errno()
これでMySQLのエラーがどうなっているかみてみるといいと思います。 うまくいかないときはとにかくエラーメッセージを見ることが重要です。 あとデータの中身がどうなってるとかを把握できるように変数の中とかを公開までの間だけ表示するようにするといいかもしれません。


----------------
「情報商材やったら負けかなと思っている」

 

Re: こまりました・・・

masa-web
(一人前)
投稿日時: 2007-8-21 14:52
いろいろとありがとうございます。エラーに関してなんですが、貼っていただいたURLを参考に埋め込んでみました。これでいいのかな・・・
<?php
extract($_POST);
if($name<> '') {
$link = mysql_query('××××××', '××××××', '××××××');

if(! mysql_select_db('××××××')) {
echo mysql_errno($link) . ": " . mysql_error($link) . "\n";
}

if(! mysql_query("INSERT into * gprl values('$name', '$url', '$rank', 0)", $link)) {
echo mysql_errno($link) . ": " . mysql_error($link) . "\n";
}

$name = '';
echo"データを登録しました<br>";
echo"登録続けますか? <a href=\"insert.php\">続行</a>";
exit;
}
mysql_close( res )
?>

フォーム部分です。
<form action="insert.php" method="post">
<ul>
<li>サイト名:<input type="text" name="name" size="40"></li>
<li>URL:<input type="text" name="url" size="40"></li>
<li>ページランク:<input type="text" name="rank" size="3"></li>
<li><input type="submit" value="登録"></li>
</ul>
</form>

埋め込んだらエラー等はでずに今までと同じでした。。。入れ方が間違ってるのかな・・・


----------------
ネット通販の事なら通販ドットコム

 

Re: こまりました・・・

aloha1
(長老)
投稿日時: 2007-8-21 17:27
立て込んでるので、メモ程度にのこしますね。

スクリプトのファイルの拡張子は、phpにしてますよね?
htmlに埋め込んでも動作すると言うサーバーの設定のほうがすくないようなきがしたので、もしやと思い。
 

Re: こまりました・・・

masa-web
(一人前)
投稿日時: 2007-8-21 17:29
大丈夫です。拡張子はちゃんと『.php』にしています。


----------------
ネット通販の事なら通販ドットコム

 

Re: こまりました・・・

ズズ
(新米)
投稿日時: 2007-8-21 18:16
はじめまして。
「My SQL 入門以前」持ってます。
多分、191ページのソースを元にしているんですよね?
だったら、付録のCD-ROMからソースを引っ張り出してきて、変数やデータベース名等をオリジナルに変更して、再トライしてみてはいかですか?
そのほうが簡単だと思います。

単純な、入力ミスで動かないのかもしれないし。。。
どうでしょ?


 

Re: こまりました・・・

masa-web
(一人前)
投稿日時: 2007-8-21 19:01
やってみましたけど、やっぱりだめでした。全く登録されませんでした


----------------
ネット通販の事なら通販ドットコム

 

Re: こまりました・・・

のぼ
(一人前)
投稿日時: 2007-8-22 0:37
PHPあまりしらないであまり偉そうなこと書けませんが、
extract($_POST); みたいな書き方はphp.iniのregister_globalsオプションがonになってないとだめかもしれないですよ。 register_globalsはレンタルサーバとか使ってるのであれば管理者に聞くか、phpinfo()で表示される変数を見ればわかります。 おそらくそうじゃないかなと。(今時のPHPはextractはしない前提だと思います。逆にこれがあればちょっとあやしげだと疑ってもいいかも。 理由はセキュリティ的な問題とかあります)

extract($_POST);で、POSTされた値をとれますが、とれないという前提で

extract($_POST);を消すなりコメントアウトしてその下に
$name = $_POST['name'];
$url = $_POST['url'];

みたいにするといいかもしれません。

あとコンピュータは嘘つきません。
何も入らないと言うことは変数に何もないからなんではないかな。


----------------
「情報商材やったら負けかなと思っている」

 

Re: こまりました・・・

aloha1
(長老)
投稿日時: 2007-8-22 7:12
のぼさんのいわれリ通りですね。
まずそのあたりを調べるといいですね。

あと、実環境のまえに、自分のWindowsの環境で色々実験するといいでしょう。
それから実環境にてきようするといいですね。

こんな記事が参考になりますよ。
http://www.thinkit.co.jp/free/article/0701/12/3/

LAMP for Windows です。
ホントはLinuxかFreeBSDのほうがお勧めですけど。
というのもWindows自体のセキュを考えたらその方がいいです。
Apacheが動作することになるので。


でも、かなり便利になることは間違いありません。
 

Re: こまりました・・・

masa-web
(一人前)
投稿日時: 2007-8-22 9:41
ありがとうございます☆参考にして取り組んでみたいと思います☆助かります。


----------------
ネット通販の事なら通販ドットコム

 
Yahoo!リスティング広告
igosso似顔絵アバター

誰でもできる!ブログで簡単!アフィリエイト

アフィリエイトに役立つ本

このランキングは、当サイトのどのページにリンクしていただいても反映されるようになっています。
アクセス解析

このページの先頭へ戻る