私はcodeigniterフレームワークを使用しています、私の問題は、私は正しい値をPHPからjsに渡すことができません。このコードは、ユーザー入力からデータベースへの可用性チェック用です。ここJSにPHPの値を渡す方法。 CI
は私のコントローラである。ここ
class Ajax extends CI_Controller
{
function __construct()
{
parent::__construct();
}
function index()
{
$this->output->set_output("This is an AJAX endpoint!");
}
function activityCode_availability()
{
$activityCode = trim($this->input->post("activityCode"));
$activityCode = mysql_escape_string($activityCode);
$msg = $this->Activity_model->check_activityCode($activityCode);
if($msg == 1)
{
$a= '<font color="#cc0000"><b>'.$activityCode.'</b> is already in use.</font>';
return $a;
}
else
{
$b = 'OK';
return $b;
}
}
}
が私の見解である。ここ
<?php
$activityCode = array(
'name' => 'activityCode',
'id' => 'activityCode'
);
echo form_input($activityCode);
?>
<span id="availability_status"></span>
は私のモデルである
function check_activityCode($activityCode)
{
$query = $this->db->query("SELECT activityCode
FROM ami_activity
WHERE activityCode = '$activityCode'");
return $query->num_rows();
}
ここに私はjavascript
(document).ready(function(){
$('#activityCode').change(activity_check);
});
function activity_check()
{
var activityCode = $('#activityCode').val();
var msgbox = $("#availability_status");
if(activityCode.length > 2)
{
$("#availability_status").html('<img src="<?php echo base_url();?>img/loader.gif"> Checking availability.');
$.ajax({
type: "POST",
url: "/index.php/ajax/activityCode_availability",
data: "activityCode="+ activityCode,
success: function(msg){
$("#availability_status").ajaxComplete(function(event, request){
if(msg == 'OK')
{
$("#activityCode").removeClass("red"); // remove red color
$("#activityCode").addClass("green"); // add green color
msgbox.html('<img src="<?php echo base_url();?>img/green_check.gif"> <font color="Green"> Available </font>');
}
else
{
$("#activityCode").removeClass("green"); // remove green color
$("#activityCode").addClass("red"); // add red color
msgbox.html(msg);
}
});
}
});
}
else
{
$("#activityCode").addClass("red"); // add red color
$("#availability_status").html('<font color="#cc0000">Enter valid User Name</font>');
}
}
です210
どんなアイデアでも大歓迎です。ありがとうございました。
おかげで、
ジャム
申し訳ありませんが、それは、コードの全体の多くがあります。何が問題なの? PHPからの値を持つjs変数をエコーすることで、PHPからjavascriptに変数を渡すことができます。 –
あなたはmysql_escape_stringを使用しています。これは不要で、非推奨の方法です:もしあれば、mysql_real_escape_stringを使うべきです。 $ this-> db-> escape()を呼び出すかアクティブレコードを使用する場合は不要です。 –
はい。その情報をありがとうMr. Damien ..申し訳ありませんが、これは初めて私がCIを使いました。とにかくもう一度感謝:) –