Bonjour,
Je poste ce message car je bloque sur un point en ajax pour une appli web.
En effet, j'ai commencé des choses qui me donnent des résultats satisfaisant lorsque mon code php se retrouve dans un fichier à part, cependant j'aimerai inclure celui-ci dans une fonction php. Comment puis-je récupérer alors cette fonction précise dans mon code js car la méthode précédente ne fonctionne donc plus ?
Dans mon test actuel je mets alors mon code php dans une fonction et essaye de l'appeler en ajax dans la propriété data. Il semblerait que ce ne soit pas de cette façon qu'il faut s'y prendre je vous demande alors votre aide
Merci d'avance
Controller
Js
View
Modifié par Jisiiss (30 Nov 2020 - 19:58)
Je poste ce message car je bloque sur un point en ajax pour une appli web.
En effet, j'ai commencé des choses qui me donnent des résultats satisfaisant lorsque mon code php se retrouve dans un fichier à part, cependant j'aimerai inclure celui-ci dans une fonction php. Comment puis-je récupérer alors cette fonction précise dans mon code js car la méthode précédente ne fonctionne donc plus ?
Dans mon test actuel je mets alors mon code php dans une fonction et essaye de l'appeler en ajax dans la propriété data. Il semblerait que ce ne soit pas de cette façon qu'il faut s'y prendre je vous demande alors votre aide
Merci d'avance
Controller
public function presenceTest(){
$myfile = fopen("log.txt", "a") or die("Unable to open file!");
fwrite($myfile,"\n". date("Y_m_d H:i:s") . " > ini");
if (isset($_POST['action'])){
echo "action ";
switch ($_POST['action']) { //pour permettre d'avoir plusieurs fonction qui font appel à ce back
case "togglepresence" :
if($_POST['value'] === '1') {
// tu créé ta requête pour passer la présence en true
$pres=1;
echo "11111111111111111111111111111111111";
}else{
// tu créé ta requête pour passer la présence en false
$pres=0;
echo "000000000000000000000000000";
}
// tu exécutes ta requête
$this->seat_model->update( array( 'seat_id' => $_POST['id'] ), array(
'presence' => $pres,
));
break;
}
}
fwrite($myfile, "\n Last error : ". error_get_last()['type']. error_get_last()['message']. error_get_last()['file']. " : " . error_get_last()['line']);
fclose($myfile);
}
Js
function TogglePresence2($id){
if (document.getElementById($id).checked === true){
$value = "1";
}else{
$value = "0";
}
$("#debug").html($id + " = " + $value) ;
$.ajax({
type: "POST",
url: "/Seat.php",
data: {func: 'presenceTest',action:"togglepresence",id:$id,value:$value}
})
.done(function(data){
$("#debug").html(data);
});
View
<input id='<?php echo $seat->seat_id; ?>' onchange='TogglePresence2(this.id);' class="filled-in" type="checkbox" name="presence" <?php if($seat->presence==true) echo 'checked="checked"'; ?> /> <label title="presence" for="<?php echo $seat->seat_id; ?>"></label>
Modifié par Jisiiss (30 Nov 2020 - 19:58)