求救!碰到了莫名其妙的問題!

來源:互聯網
上載者:User
Thinkphp架構


本來在另外一台電腦上wamp2.4 win7 完全可以運行,現在換了台電腦,wamp3.0 win10 就不能運行了,為什麼啊?是不是配置沒配好

以下代碼

html:


js:
$('#add_user').validate({
submitHandler:function(form){
$('#add_user').ajaxSubmit({
url:ThinkPHP['MODULE']+'/User/add',
type:'POST',
success:function(data){
alert(data);
$('#name').val("");
$('#phone').val("");
$('#id_card').val("");
$('#health_card').val("");
$('#contact_name').val("");
$('#contact_phone').val("");
},
});

},
rules:{
name:{
required:true,
},
age:{
required:true,
},
phone:{
required:true,
},
id_card:{
required:true,
},
},
messages:{
name:{
required:'姓名不得為空白',
},
age:{
required:'年齡不得為空白',
},
phone:{
required:'電話不得為空白',
},
id_card:{
required:'身份證不得為空白',
},
},
});

控制器:
public function add(){
$user=D('User');
$id=$user->add(I('post.name'),I('post.phone'),I('post.id_card'),I('post.health_card'),I('post.hospitalized'),I('post.address'),I('post.contact_name'),I('post.contact_phone'));
echo $id?$id:0;

}

model:
public function add($name,$phone,$id_card,$health_card,$hospitalized,$address,$contact_name,$contact_phone){

//$社會安全號碼 = '';
$birth = strlen($id_card)==15 ? ('19' . substr($id_card, 6, 6)) : substr($id_card, 6, 8);
$birth=substr($birth,0,4).'-'.substr($birth,4,2).'-'.substr($birth,6,2);
list($year,$month,$day) = explode("-",$birth);
$year_diff = date("Y") - $year;
$month_diff = date("m") - $month;
$day_diff = date("d") - $day;
if ($day_diff < 0 || $month_diff < 0)
$year_diff--;




$age=$year_diff;
$sex = substr($id_card, (strlen($id_card)==15 ? -1 : -2), 1) % 2 ? '男' : '女';


$data=array(
'name'=>$name,
'age'=>$age,
'sex'=>$sex,
'phone'=>$phone,
'id_card'=>$id_card,
'health_card'=>$health_card,
'hospitalized'=>$hospitalized,
'address'=>$address,
'contact_name'=>$contact_name,
'contact_phone'=>$contact_phone,
);



return M('User')->add($data);
}

Firefox報錯:POST XHR http://localhost/aier/index.php/Home/User/add [HTTP/1.1 404 Not Found 35ms]

:(
1146:Table 'aier.u' doesn't exist [ SQL語句 ] : REPLACE INTO `U` () VALUES ()
錯誤位置

FILE: D:\wamp64\www\aier\ThinkPHP\Library\Think\Db\Driver.class.php  LINE: 350
TRACE

#0 D:\wamp64\www\aier\ThinkPHP\Library\Think\Db\Driver.class.php(350): E('1146:Table 'aie...')
#1 D:\wamp64\www\aier\ThinkPHP\Library\Think\Db\Driver.class.php(237): Think\Db\Driver->error()
#2 D:\wamp64\www\aier\ThinkPHP\Library\Think\Db\Driver.class.php(824): Think\Db\Driver->execute('REPLACE INTO `U...', false)
#3 D:\wamp64\www\aier\ThinkPHP\Library\Think\Model.class.php(320): Think\Db\Driver->insert('3424', 'U24234', '24323423')
#4 D:\wamp64\www\aier\APP\Home\Controller\UserController.class.php(12): Think\Model->add('3424', '324234', '24323423', '', '', '', '', '')
#5 [internal function]: Home\Controller\UserController->add()
#6 D:\wamp64\www\aier\ThinkPHP\Library\Think\App.class.php(173): ReflectionMethod->invoke(Object(Home\Controller\UserController))
#7 D:\wamp64\www\aier\ThinkPHP\Library\Think\App.class.php(110): Think\App::invokeAction(Object(Home\Controller\UserController), 'add')
#8 D:\wamp64\www\aier\ThinkPHP\Library\Think\App.class.php(204): Think\App::exec()
#9 D:\wamp64\www\aier\ThinkPHP\Library\Think\Think.class.php(120): Think\App::run()
#10 D:\wamp64\www\aier\ThinkPHP\ThinkPHP.php(97): Think\Think::start()
#11 D:\wamp64\www\aier\index.php(24): require('D:\\wamp64\\www\\a...')
#12 {main}


本來在另外一台電腦上wamp2.4 win7 完全可以運行,現在換了台電腦,wamp3.0 win10 就不能運行了,為什麼啊?是不是配置沒配好


回複討論(解決方案)

這根本就是win10的問題。我換了win7馬上能用了

如果報 404,那就是配置問題了
但你接下來的錯誤資訊又是哪裡來的呢?


Table 'aier.u' doesn't exist [ SQL語句 ] : REPLACE INTO `U` () VALUES ()
表 aier.u 不存在,就是你自己的問題了

知道問題了
控制器裡:
如果直接用$user->add會直接操作資料庫,不連model,比如我把控制器的$user->add改成$user->dadd,報 Think\Model:dadd方法不存在!

$user=D('User');
$id=$user->dadd(I('post.name'),I('post.phone'),I('post.id_card'),I('post.health_card'),I('post.hospitalized'),I('post.address'),I('post.contact_name'),I('post.contact_phone'));

請問這該怎麼辦?我的tp版本是3.2.3

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.