2015-07-21 40 views
0

我創建一個數據輸入系統。 現在我能夠從表單中添加數據。 但是更新,當我嘗試更新它增加了一個條目不work.Instead。更新在紅豆

這是我的add.php。

<?php 
require 'rb.php'; 
R::setup('mysql:host=localhost:3306;dbname=employee', 
     'root', ''); 
$emp = R::dispense('emp'); 
$emp->emp_no=$_GET['empno']; 
$emp->empname =$_GET['empname']; 
$emp->fathername =$_GET['fathername']; 
$emp->sex=$_GET['sex']; 
$emp->designation =$_GET['designation']; 
$emp->department =$_GET['department']; 
$emp->dob =$_GET['dob']; 
$emp->dor =$_GET['dor']; 
$emp->doa =$_GET['doa']; 
$emp->serviceStatus =$_GET['serviceStatus']; 
$emp->address =$_GET['address']; 
$emp->pymtmode =$_GET['pymtmode']; 
$emp->bank_code =$_GET['bank_code']; 
$emp->acc_no =$_GET['acc_no']; 
$emp->scale =$_GET['scale']; 
$emp->basic =$_GET['basic']; 



R::store($emp); 

?> 

這是我的update.php。這在什麼地方是錯誤的。

<?php 
require 'rb.php'; 
R::setup('mysql:host=localhost:3306;dbname=employee', 
     'root', ''); 
$emp = R::load('emp', $empno); 
$emp->emp_no=$_GET['empno']; 
$emp->empname =$_GET['empname']; 
$emp->fathername =$_GET['fathername']; 
$emp->sex=$_GET['sex']; 
$emp->designation =$_GET['designation']; 
$emp->department =$_GET['department']; 
$emp->dob =$_GET['dob']; 
$emp->dor =$_GET['dor']; 
$emp->doa =$_GET['doa']; 
$emp->serviceStatus =$_GET['serviceStatus']; 
$emp->address =$_GET['address']; 
$emp->pymtmode =$_GET['pymtmode']; 
$emp->bank_code =$_GET['bank_code']; 
$emp->acc_no =$_GET['acc_no']; 
$emp->scale =$_GET['scale']; 
$emp->basic =$_GET['basic']; 



R::store($emp); 

?> 

這裏是mysql的控制檯

http://i.stack.imgur.com/b9jcg.jpg

+0

更多信息將是有益的。最新的錯誤信息?更新在哪裏?請張貼更多的代碼和信息得到一個合格的幫助 – rob

+0

沒有錯誤。而不是更新它創建多個條目具有相同的empno ... –

+0

發佈了一個鏈接到MySQL控制檯的屏幕截圖 –

回答

0

我認爲你正在使用$ EMPNO你設置它之前,你就不會加載用於更新現有行的屏幕截圖的鏈接。

$emp = R::load('emp', $empno); 

應該

$emp = R::load('emp', $_GET['empno']); 
+0

沒有使用過你的代碼。它添加了另一個條目,而不是更新以前的條目.. –

+0

發佈了一個鏈接到mysql控制檯的截圖 –

+0

我看了你的截圖,並不清楚每列是什麼,但我看到一個增量int(id?)最高可達64.如果不是,請嘗試使用該數字加載數據。 – AndrewR

0

在您update.php文件,你有下面這行: $emp = R::load('emp', $empno);

$empno是您update.php文件無處定義。就拿要更新,並將其賦值給變量這種方式記錄的ID:

$empno = $_GET['empno'];

把它放在你的文件的開頭。

+0

我不是Redbean的專家。你可以在我的update.php –

+0

感謝編輯的變化解釋......這是initialistion需要什麼? –

0

謝謝回答傢伙...安德魯·R和穆罕默德......這裏是工作的代碼:

<?php 
 
require 'rb.php'; 
 
R::setup('mysql:host=localhost:3306;dbname=employee', 
 
     'root', ''); 
 
$empno = $_GET['empno']; 
 
$emp = R::findOne('emp','emp_no=?',[$empno]); 
 
$emp->emp_no=$_GET['empno']; 
 
$emp->empname =$_GET['empname']; 
 
$emp->fathername =$_GET['fathername']; 
 
$emp->sex=$_GET['sex']; 
 
$emp->designation =$_GET['designation']; 
 
$emp->department =$_GET['department']; 
 
$emp->dob =$_GET['dob']; 
 
$emp->dor =$_GET['dor']; 
 
$emp->doa =$_GET['doa']; 
 
$emp->serviceStatus =$_GET['serviceStatus']; 
 
$emp->address =$_GET['address']; 
 
$emp->pymtmode =$_GET['pymtmode']; 
 
$emp->bank_code =$_GET['bank_code']; 
 
$emp->acc_no =$_GET['acc_no']; 
 
$emp->scale =$_GET['scale']; 
 
$emp->basic =$_GET['basic']; 
 

 

 

 
R::store($emp); 
 

 
?>