2015-01-14 16 views
4

我试图在detailakaun一次更新我的数据在两个表内(maklumatakaun,detailakaun)有列'KodLokasi''KodJenisAkaun'和'NoTelefon'可能有多个数据在一个ID下输入。这是我走到这一步,更新两个表中的数据。其中一列包含多个数据在一列

extract ($_POST); 

if ($_POST) { 

    $NoAkaun   = isset($_POST['NoAkaun'])   ? $_POST['NoAkaun'] : ''; 
    $KodBahagian  = isset($_POST['KodBahagian'])  ? $_POST['KodBahagian'] : ''; 
    $Tarif    = isset($_POST['Tarif'])   ? $_POST['Tarif'] : ''; 
    $KodDaerah   = isset($_POST['KodDaerah'])  ? $_POST['KodDaerah'] : ''; 
    $KodKategori  = isset($_POST['KodKategori'])  ? $_POST['KodKategori'] : ''; 
    $NoTelefon   = isset($_POST['NoTelefon'])  ? $_POST['NoTelefon'] : ''; 
    $KodLokasi   = isset($_POST['KodLokasi'])  ? $_POST['KodLokasi'] : ''; 
    $KodJenisAkaun  = isset($_POST['KodJenisAkaun']) ? $_POST['KodJenisAkaun'] : ''; 
    $akaun_id   = isset($_POST['akaun_id'])   ? $_POST['akaun_id'] : ''; 






    $sql = mysql_query("UPDATE maklumatakaun 
         SET NoAkaun = '$NoAkaun' , 
         KodBahagian = '$KodBahagian' , 
         KodDaerah = '$KodDaerah' , 
         KodKategori = '$KodKategori' , 
         Tarif = '$Tarif' , 
         WHERE id = '$id'"); 
    $akaun_id = mysql_insert_id(); 
    foreach ($NoTelefon AS $i => $telefon){ 
    $sql= mysql_query ("UPDATE detailakaun 
         SET KodJenisAkaun = '$KodJenisAkaun[$i]' , 
         KodLokasi = '$KodLokasi[$i]' , 
         NoTelefon = '$telefon' 
         "); 

此代码将更新这两个表中的所有列,但可以说,一个帐户已经与3“KodLokasi”注册“KodJenisAkaun”和“NoTelefon”,然后在与更新只有3列中的一个会重复3次。我如何正确更新?

回答

0
foreach ($NoTelefon AS $i => $telefon){ 
$sql= mysql_query ("UPDATE detailakaun 
        SET KodJenisAkaun = '$KodJenisAkaun[$i]' , 
        KodLokasi = '$KodLokasi[$i]' , 
        NoTelefon = '$telefon' 
        "); 

$ NoTelefon有超过3倍

3点的数据和使用的foreach力量循环只需使用1个查询与3个数据

$sql= mysql_query ("UPDATE detailakaun 
        SET KodJenisAkaun = '$KodJenisAkaun[1]' , 
        KodLokasi = '$KodLokasi[1]' , 
        NoTelefon = '$NoTelefon[1]' 
        "); 

希望这给一个想法,格式化查询一是然后执行

+0

所以你建议在第一位输入数字?我不明白这是说实话先生 – itsfawwaz

+0

取决于$ NoTelefon。当你执行print_r($ NoTelefon)时你看到了什么; ? –

相关问题