2011-09-14 8 views
0

phpハンドラページに変数を投稿しようとしています。これは、特定のフォームフィールドのデータをデータベースに追加するかどうかをphpに指示しますが、何らかの理由で私の投稿機能は何も投稿しません。私は物事のPHP側のためのcodeigniterフレームワークを使い、物事のJavaScript側のjqueryを使用しています。私は、それが.phpページではないと感じるために投稿するページとして渡すURLと関係があるかもしれないと思っていますが、わかりません。どんな助けでも大歓迎です。jqueryがcodeigniterで正しくポストしないのはなぜですか?

  $('form').submit(function() { 
       if(new_gal) { 
        if(name_valid && description_valid && gal_name_valid && gal_description_valid) { 
        // return the new gal info to php 
         $.post('http://localhost/index.php/site/photoUploader', {NewGallerry: 'TRUE'}); 

        return true; 
       } else { 
         return false; 
        } 
       } else if (name_valid && description_valid) 
       { 
        // return the id of the gal to php and tell php not to add the info in the new gal section. 
        $.post('http://localhost/index.php/site/photoUploader', {NewGallerry: 'FALSE'}); 
        return true;  
       } else { 
        return false; 
       } 

この回答に時間を費やしてくれている人にどうもありがとうございます。

+0

使用相対パス。 '/ index.php/site/photoUploader' –

+1

' site'コントローラにあなたのコードを表示します。あなたのjQueryコードはうまく見える –

+0

@webarto:なぜか?あなたが何かを説明するだけではなく、これを行うのであれば、コメントはずっと便利です。 –

答えて

1

試してみてください。代わりに

{'NewGallerry': FALSE} 

{NewGallerry: 'FALSE'} 

とにかくの放火魔コンソールは常にAjaxであなたを助けます;)

+0

これは必須ではありませんが、JavaScriptオブジェクトではそのプロパティを引用符で囲む必要はありません。 jQueryはJSONとしてシリアル化するときにそれらを適切に引用します。 –

+0

とにかくfirebugコンソールは常にajaxであなたを助けます;)それは答えです:) – sbaaaang

1

あなたのコードはlocalhostを使用しています。あなたのウェブサイトに変更してください。 Javascriptは、サーバーではなくクライアント上でのみ実行されます。

+1

ローカルマシンで実行している場合はどうなりますか? 「Javascriptはクライアント側で実行され、サーバ側では実行されない」という答えの部分は、問題がドメイン間の問題であっても、問題とは関係がないため、ダウン投票について考えました。 –

+0

私はWebサイトの開発段階のテストサーバーを実行しています。そのため、http:// localhost /ですが、実行されるとすぐにサイトをWebサーバーに移動します。 –

関連する問題