2016-01-26 93 views
-2

这是我的模式更新复选框的mysqli

<div class="modal fade bs-example-modal-lg" id="exampleModal<?php echo $row['t_id'] ?>" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel<?php echo $row['t_id'] ?>"> 
    <div class="modal-dialog modal-lg" role="document"> 
    <div class="modal-content"> 
     <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> 
    <h4 class="modal-title" id="exampleModalLabel">Termin Ansicht <font color="red">ID</font>: <b><?php echo $row['t_id'] ?></b> <font color="red">Call Agent</font>: <b><?php echo $row['username'] ?></b> <font color="red">Call Datum</font>: <b><?php echo date("d.m.y" , strtotime($row['datum'])) ?></b></h4> 
    </div> 
    <div class="modal-body"> 
      <form> 
           <div class="row"> 

            <div class="col-sm-3"> 
             <input type="text" id="username" value="<?php echo $row['username']; ?>" class="form-control"> 
            </div> 
           <div class="col-sm-3"> 
             <input type="text" id="t_id" value="<?php echo $row['t_id']; ?>" class="form-control"> 
           </div> 


           </div> 
           <br> 

          <div class="row"> 
           <label class="col-sm-1 control-label">Anrede</label> 
          <div class="col-sm-2"> 
            <input type="text" id="anrede<?php echo $row['t_id']; ?>" value="<?php echo $row['anrede']; ?>" class="form-control"> 
          </div> 
            <label class="col-sm-1 control-label">Vorname</label> 
            <div class="col-sm-3"> 
             <input type="text" id="vorname<?php echo $row['t_id']; ?>" value="<?php echo $row['vorname']; ?>" class="form-control" onselectstart="return false" onpaste="return false;" onCopy="return false" onCut="return false" onDrag="return false" onDrop="return false"> 
            </div> 
           <label class="col-sm-1 control-label">Nachname</label> 
           <div class="col-sm-3"> 
             <input type="text" id="nachname<?php echo $row['t_id']; ?>" value="<?php echo $row['nachname']; ?>" class="form-control" onselectstart="return false" onpaste="return false;" onCopy="return false" onCut="return false" onDrag="return false" onDrop="return false"> 
           </div> 
           </div> 
           <br> 
          <div class="row"> 
            <label class="col-sm-1 control-label">Strasse</label> 
            <div class="col-sm-3"> 
             <input type="text" id="strasse<?php echo $row['t_id']; ?>" value="<?php echo $row['strasse']; ?>" class="form-control"> 

            </div> 
           <label class="col-sm-1 control-label">PLZ</label> 
           <div class="col-sm-3"> 
             <input type="text" id="plz<?php echo $row['t_id']; ?>" value="<?php echo $row['plz']; ?>" class="form-control"> 
           </div> 

           <label class="col-sm-1 control-label">Ort</label> 
           <div class="col-sm-2"> 
             <input type="text" id="ort<?php echo $row['t_id']; ?>" value="<?php echo $row['ort']; ?>" class="form-control"> 
           </div> 
           </div> 
           <br> 
          <div class="row"> 
            <label class="col-sm-1 control-label">Krankenkasse</label> 
            <div class="col-sm-3"> 
             <input type="text" id="krankenkasse<?php echo $row['t_id']; ?>" value="<?php echo $row['krankenkasse']; ?>" class="form-control"> 

            </div> 
           <label class="col-sm-1 control-label">Seit</label> 
           <div class="col-sm-3"> 
             <input type="text" id="seit<?php echo $row['t_id']; ?>" value="<?php echo $row['seit']; ?>" class="form-control"> 
           </div> 

           <label class="col-sm-1 control-label">Personen</label> 
           <div class="col-sm-1"> 
             <input type="text" id="personen<?php echo $row['t_id']; ?>" value="<?php echo $row['personen']; ?>" class="form-control"> 
           </div> 
           </div> 
           <br> 


           <div class="row"> 
            <label class="col-sm-1 control-label">Telefon</label> 
            <div class="col-sm-2"> 
             <input type="text" id="telefon<?php echo $row['t_id']; ?>" value="<?php echo $row['telefon']; ?>" class="form-control"> 

            </div> 
           <label class="col-sm-1 control-label">Termin</label> 
           <div class="col-sm-2"> 
             <input type="date" id="termin<?php echo $row['t_id']; ?>" value="<?php echo $row['termin']; ?>" class="form-control"> 
           </div> 

           <label class="col-sm-1 control-label">Uhrzeit</label> 
           <div class="col-sm-2"> 
             <input type="text" id="time<?php echo $row['t_id']; ?>" value="<?php echo date("H:i", strtotime($row['time'])) ?>" class="form-control"> 
           </div> 

           <div class="col-sm-2"> 
            <select class="form-control" id="vermittler<?php echo $row['t_id']; ?>" value='<?php echo $row['vermittler'];?>'> 
             <option ><?php echo $row['vermittler'];?></option> 
            <?php 
            $result1 = ("SELECT * FROM users where type='berater'") or mysql_error(); 
           $ilaz=mysql_query($result1); 
           while($rowa = mysql_fetch_array($ilaz)){ 

           ?> 
           <option id="berater" value = "<?php echo $rowa['username']; ?>" > 
            <?php echo $rowa['username']; ?> 
           </option> 
           <?php 
           } 
           ?> 


             </select> 
             </div> 
           </div> 

          <br> 


           <div class="row"> 
             <label for="ccomment" class="control-label col-lg-2">Bemerkung</label> 
             <div class="col-lg-4"> 
              <textarea class="form-control " id="coment<?php echo $row['t_id']; ?>" required><?php echo $row['coment']; ?></textarea> 
             </div> 

             <label for="ccomment" class="control-label col-lg-1">Feedback</label> 
             <div class="col-lg-4"> 
              <textarea class="form-control " id="feedback<?php echo $row['t_id']; ?>" ></textarea> 
             </div> 
            </div> 
            <br> 

            <div class="row"> 
            <?php 

            $bfeedback = ("select id, user, feedback_b, datum from b_feedback where id='". (int)$_GET['t_id']."' order by datum desc") or mysql_error(); 

            $bresult = mysql_query($bfeedback); 
            if($bfeedback === FALSE) { 
              die(mysql_error()); // TODO: better error handling 
             } 

            while($beraterfeedback = mysql_fetch_array($bresult)){ 
             ?> 
             <label for="b_feedback" class="control-label col-lg-2"><?php #echo $beraterfeedback['user'] ?><?php #echo $beraterfeedback['datum'] ?></label> 

             <td><font color="red"><?php echo $beraterfeedback['user'] ?></font></td>&nbsp;&nbsp;&nbsp;&nbsp; 
             <td><?php echo $beraterfeedback['datum'] ?></td>&nbsp;&nbsp;&nbsp;&nbsp; 
             <td><?php echo $beraterfeedback['feedback_b'] ?></td><br>&nbsp;&nbsp;&nbsp;&nbsp;<hr> 

             <?php 

            } 

            ?> 


            </div> 

           <br>  
         <div class="row"> 

           <div class="col-sm-20"> 
            <?php 
             $iAstatus = explode(",",$row['Astatus']); 
             foreach($arrAstatus as $aAstatus) 
             { 
              if(in_array($aAstatus,$iAstatus)) 
               echo "<label class='col-sm-1 control-label'><input type='checkbox' class='s' value='".$aAstatus."' checked> .$aAstatus. </label>";      
              else 
               echo "<label class='col-sm-1 control-label'><input type='checkbox' class='s' value='".$aAstatus."'> .$aAstatus.</label>" ;     

             } 
            ?> 
           </div> 

            <div class="col-sm-1"> 
              <input type="text" id="positiv<?php echo $row['t_id']; ?>" value="<?php echo $row['abschluss']; ?>" class="form-control"> 
            </div> 

          </div> 
          <br> 
            <div class="row"> 
            <label class="col-sm-5 control-label"><p style="color:red"><font size="2">Personen Angaben (Namen, Geburtsdatum)?</font></p></label> 
            <div class="col-sm-5"> 
              <textarea class="form-control " id="personen_angaben<?php echo $row['t_id']; ?>" ><?php echo $row['personen_angaben']; ?></textarea> 
            </div> 
           </div> 


           <br> 
          <div class="row"> 
            <label class="col-sm-5 control-label"><p style="color:red"><font size="2">Sind Sie (bzw. jemand in Ihrem Haushalt) momentan in &auml;rztliche Behandlung/Therapie(Physio) oder steht Ihnen eine Behandlung bevor?</font></p></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="fr_1<?php echo $row['t_id']; ?>" value="<?php echo $row['fr_1']; ?>" > 
            </div> 
           </div> 
           <br> 
           <div class="row"> 
            <label class="col-sm-5 control-label"><p style="color:red"><font size="2">Zusatzfrage wenn JA- Dies k&ouml;nnte Auswirkungen auf Ihren Wechsel haben. Deshalb, welcher Art ist denn diese Behandlung?</font></p></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="fr_2<?php echo $row['t_id']; ?>" value="<?php echo $row['fr_2']; ?>"> 
            </div> 
           </div> 
           <br> 
          <div class="row"> 
            <label class="col-sm-5 control-label"><p style="color:red"><font size="2">Nehmen Sie (bzw. jemand in Ihrem Haushalt) regelm&auml;ssig Medikamente?</font></p></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="z_fr_2<?php echo $row['t_id']; ?>" value="<?php echo $row['z_fr_2']; ?>"> 
            </div> 
           </div> 

          <div class="row"> 
            <label class="col-sm-5 control-label"><font size="2"><p style="color:red">Zusatzfrage wenn JA- Was sind das f&uuml;r Medikamente oder f&uuml;r was m&uuml;ssen Sie diese nehmen?</p></font></label> 
            <div class="col-sm-5"> 
             <input class="form-control" id="fr_3<?php echo $row['t_id']; ?>" value="<?php echo $row['fr_3']; ?>" > 
            </div> 
           </div> 

          <div class="row"> 
            <label class="col-sm-5 control-label"><font size="2"><p style="color:red">Hatten Sie (bzw. jemand an Ihrem Haushalt) in den letzten 10 Jahren eine Operation oder steht eine bevor?</p></font></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="z_fr_3<?php echo $row['t_id']; ?>" value="<?php echo $row['z_fr_3']; ?>"> 
            </div> 
           </div> 

          <div class="row"> 
            <label class="col-sm-5 control-label"><font size="2"><p style="color:red">Was f&uuml;r eine Operation wann /ist das?</p></font></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="fr_4<?php echo $row['t_id']; ?>" value="<?php echo $row['fr_4']; ?>" > 
            </div> 
           </div> 

          <div class="row"> 
            <label class="col-sm-5 control-label"><font size="2"><p style="color:red">Wenn die Operation in der Vergangenheit war: beziehen Sie nun eine IV-Rente oder ist dies folgenlos geheilt?</p></font></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="z_fr_4<?php echo $row['t_id']; ?>" value="<?php echo $row['z_fr_4']; ?>" > 
            </div> 
           </div> 

          <div class="row"> 
            <label class="col-sm-5 control-label"><font size="2"><p style="color:red">Falls 1 Person krank ist - K&ouml;nnen Sie sich vorstellen, einen Teil Ihrer Familie zu versichern?</p></font></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="fr_5<?php echo $row['t_id']; ?>" value="<?php echo $row['fr_5']; ?>" > 
            </div> 
           </div> 

          <div class="row"> 
            <label class="col-sm-5 control-label"><font size="2">Status</font></label> 
            <div class="col-sm-5"> 
             <input class="form-control" type="text" id="fr_6<?php echo $row['t_id']; ?>" value="<?php echo $row['status']; ?>"> 
            </div> 
           </div> 





          <div class="row"> 
          <label class="col-sm-4 control-label"> </label> 
          <div class="col-sm-3"> 

          </div> 

          </div> 
          </form> 
    </div> 
    <div class="modal-footer"> 
    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
    <button type="button" onclick="updatedata('<?php echo $row['t_id'] ?>')" data-dismiss="modal" class="btn btn-primary">Update</button> 

    </div> 
</div> 

与这个jQuery AJAX

function updatedata(str){ 

var t_id = str; 
var anrede = $('#anrede'+str).val(); 
var vorname = $('#vorname'+str).val(); 
var nachname = $('#nachname'+str).val(); 
var strasse = $('#strasse'+str).val(); 
var plz = $('#plz'+str).val(); 
var ort = $('#ort'+str).val(); 
var krankenkasse = $('#krankenkasse'+str).val(); 
var seit = $('#seit'+str).val(); 
var personen = $('#personen'+str).val(); 
var telefon = $('#telefon'+str).val(); 
var termin = $('#termin'+str).val(); 
var time = $('#time'+str).val(); 
var vermittler = $('#vermittler'+str).val(); 
var coment = $('#coment'+str).val(); 
var feedback = $('#feedback'+str).val(); 
var s = new Array(); 
    $("input:checked").each(function() { 
     s.push($(this).val()); 
    }); 


var positiv = $('#positiv'+str).val(); 
var personen_angaben = $('#personen_angaben'+str).val(); 
var fr_1 = $('#fr_1'+str).val(); 
var fr_2 = $('#fr_2'+str).val(); 
var z_fr_2 = $('#z_fr_2'+str).val(); 
var fr_3 = $('#fr_3'+str).val(); 
var z_fr_3 = $('#z_fr_3'+str).val(); 
var fr_4 = $('#fr_4'+str).val(); 
var z_fr_4 = $('#z_fr_4'+str).val(); 
var fr_5 = $('#fr_5'+str).val(); 
var fr_6 = $('#fr_6'+str).val(); 

var datas="anrede="+anrede+"&vorname="+vorname+"&nachname="+nachname+"&strasse="+strasse+"&plz="+plz+"&ort="+ort+"&krankenkasse="+krankenkasse+"&seit="+seit+"&personen="+personen+"&telefon="+telefon+"&termin="+termin+"&time="+time+"&vermittler="+vermittler+"&coment="+coment+"&feedback="+feedback+"&s[]="+s+"&positiv="+positiv+"&personen_angaben="+personen_angaben+"&fr_1="+fr_1+"&fr_2="+fr_2+"&z_fr_2="+z_fr_2+"&fr_3="+fr_3+"&z_fr_3="+z_fr_3+"&fr_4="+fr_4+"&z_fr_4="+z_fr_4+"&fr_5="+fr_5+"&fr_6="+fr_6;                   
    alert(datas); 
$.ajax({ 
    type: "POST", 
    url: "updatedata.php?t_id="+t_id, 
    data: datas, 
    cache: false 
}).done(function(data) { 
    $('#info').html(data); 
    viewdata(); 
}); 
} 

这php的数组现在,当

$arrAstatus = array("Wollte k T","Kunde Ni err.","St .Gef","N.Zuhaus","Offen","Negativ","MJV","Behan.","Abgesagt","Positiv"); 

我submi t它更新所有未经检查的复选框。

我该怎么办,它仅更新选中的复选框,并刷新后给我检查过

+0

你是说你想知道如何用Ajax做到这一点? – LeonardChallis

+1

你的问题是什么? –

+0

何时声明'$ aAstatus'和'$ iAstatus',它们的值是什么? – CodeGodie

回答

0

问题:

  1. 你创建你的复选框的IDS作为数组语法s[]。我相信你会把它与name属性混淆。将此更改为:id='s[]'至此:name='s[]'
  2. <font>不再支持。另外,该元素的打开和关闭标记不正确。
  3. 你的ajax在哪里?你的form在哪里?你的提交按钮在哪里?如果没有这些信息,你会让我们假设这是一个表单,并且在提交表单时触发你的jquery函数。如果是这种情况,那么你需要你的action属性与AJAX将用来发送请求的URL。

摘要:

请更多的描述,展现你的HTML,你的PHP,jQuery的正确使我们能够更好地帮助你。为了解决你的问题,你需要发送一个AJAX请求。找出如何做到这一点,在你的代码中实现它,然后我们可以从那里继续。

+0

我使用引导模态 按钮和AJAX $就({ \t类型: “POST”, \t URL: “updatedata.php T_ID =?” + T_ID, \t数据:DATAS, \t缓存:假 \t})来完成(功能(数据){ \t $( '#信息')HTML(数据); \t \t可视数据(); 。}); –

+0

在这一点上,你需要做什么以及能够帮助我们理解的是,如果你发布了所有的PHP,HTML和jQuery代码。没有这个即时消息。更新你原来的问题。 – CodeGodie

+0

好吧我编辑它 –

0

看来你急需这方面的帮助。我看到的主要问题是您缺少form元素中的name属性。您需要使用name属性,以便在jQuery中收集数据时可以使用.serialize()函数。我将以某种方式重做您的代码,我认为您的代码正常工作。我将删除所有的引导程序和非相关的代码,以便您可以看到我在做什么:

我假设您的数据来自您的数据库。我将使用名为$data模仿该结果集的数组:

//your database data 
$data = array(
    array(
     "t_id" => 1, 
     "username" => "john", 
     "Astatus" => "Wollte k T,Kunde Ni err.,N.Zuhaus" 
    ) 
); 

//your comparison data 
$arrAstatus = array("Wollte k T", "Kunde Ni err.", "St .Gef", "N.Zuhaus", "Offen", "Negativ", "MJV", "Behan.", "Abgesagt", "Positiv"); 

接下来,我假设你通过每个结果作为$row迭代和创建forms。我删除了你的类/ ID,因为我们不需要它们来达到这个目的。相反,我把需要name属性在你输入:

<?php foreach ($data as $row) { ?> 
     <form> 
      <input type="text" name="username" value="<?php echo $row['username']; ?>" class="form-control"> 
      <input type="text" name="t_id" value="<?php echo $row['t_id']; ?>" class="form-control"> 

      <?php 

      $iAstatus = explode(",", $row['Astatus']); 
      foreach ($arrAstatus as $aAstatus) { 
       if (in_array($aAstatus, $iAstatus)) 
        echo "<label><input type='checkbox' name='s[]' value='$aAstatus' checked>$aAstatus</label><br>"; 
       else 
        echo "<label><input type='checkbox' name='s[]' value='$aAstatus'>$aAstatus</label><br>"; 
      } 
      ?> 
      <input type="submit"> 
     </form> 
<?php } ?> 

最后,当表单使用.submit()功能提交您的jQuery应该被触发。一旦提交,使用.serialize()通过AJAX与name属性获得所有投入,并将其发送:

$('form').submit(function() { 

    var datas = $(this).serialize(); 

    $.ajax({ 
     type: "POST", 
     url: "submit.php", 
     data: datas, 
     cache: false 
    }).done(function (data) { 
     console.log(data); 
    }); 
    return false; 
}); 

希望这有助于。

+0

我测试了它dosnt工作 –