Erreur 403 javascript
Résolu/Ferméjordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 6 juin 2023 à 16:02
- Erreur 403 paiement en ligne
- Erreur 0x80070643 - Accueil - Windows
- Partager photos en ligne - Guide
- Site de vente en ligne particulier - Guide
- Aller à la ligne excel - Guide
- Test performance pc en ligne - Guide
8 réponses
5 juin 2023 à 15:01
Bonjour,
là comme ça.. je pencherai pour un espace en trop dans l'url que tu essayes d'appeller ( un espace devant le mot etat.php )
Mais bon,L'erreur 403 apparaît en général lorsqu'un utilisateur souhaite accéder à un contenu ou un répertoire dont il ne possède pas les droits.
Modifié le 5 juin 2023 à 15:44
Bonjour Jordane45,
Bizarre, c'est apparût tout à coup sur toutes les fonction du site...
Voici le lien de l'image (biensur sans le domaine en question) :
Il n'y a pas d'espace en trop.
Ensuite mes droits sont à 755 pour l'intégralité du site (dossiers et fichiers).
Ce n'est donc pas une erreur sur la version jquery alors ?
5 juin 2023 à 16:38
Non non,
J'ai mis tout mes dossiers en 705 et tous mes fichiers en 604 mais toujours le même problème
5 juin 2023 à 16:39
ah, il y a un underscore... mais dans l'image on ne le voyait pas..
Par contre, le lien que tu donnes ne nous est pas accessible...
5 juin 2023 à 16:41
Vu qu'il semble que ça soit un appel ajax,
peux tu tester cette page dans firefox, y ouvrir la console du navigateur, activer l'option "xhr" et regarder ce que ça te retourne ?
5 juin 2023 à 17:14
C'est vide, aucune donnée...
Tout fonctionnait bien pourtant, rien a changé des fichiers...
5 juin 2023 à 18:36
Colle nous le lien vers la page
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question6 juin 2023 à 10:30
Vous ne pourrez pas avoir accès, c'est un accès admin...
Cependant voici le code :
Index.php
<select class="form-control" id="sel_societe" name="sel_societe" required>
<option class="font-monospace" selected value="tous">Tous</option>
<option class="font-monospace" value="Visa">Visa</option>
<option class="font-monospace" value="Mastercard">Mastercard</option>
</select>
<select class="form-control" id="sel_etat" name="sel_etat" required>
<option class="font-monospace" selected value="tous">Tous</option>
<option class="font-monospace" value="ACCEPT">Paimeent validé</option>
<option class="font-monospace" value="DECLINE">Paimeent décliné</option>
<option class="font-monospace" value="CANCEL">Paimeent Annulé</option>
<option class="font-monospace" value="ERROR">Erreur de paiement</option>
</select>
<input type="date" class="form-control" id="txt_date_du" name="txt_date_du" value="<?=$date->format('Y-m-01'); ?>">
<input type="date" class="form-control" id="txt_date_au" name="txt_date_au" value="<?=$date->format('Y-m-t'); ?>">
<button type="button" class="btn btn-info" onClick="btn_recherche()">Générer</button>
<div id="resultat_etat"></div>
<script>
function btn_recherche(){
var sel_societe = document.getElementById("sel_societe").value;
var sel_etat = document.getElementById("sel_etat").value;
var txt_date_du = document.getElementById("txt_date_du").value;
var txt_date_au = document.getElementById("txt_date_au").value;
$.ajax({
type : "GET",
url: "_etat.php",
cache: false,
data: {sel_societe:sel_societe, sel_etat:sel_etat, txt_date_du:txt_date_du, txt_date_au:txt_date_au},
error: function(e){
console.log('Ajax Error',e);
alert('Erreur Ajax !');},
success: function(response) {
jQuery("#resultat_etat").html(response).show();
console.log(response);
}
});
}
</script>
_etat.php
<?php if(isset($_GET['sel_societe'])){ $sel_societe = $_GET['sel_societe']; $sel_etat = $_GET['sel_etat']; $txt_date_du = date("Y-m-d 00:00:00", strtotime($_GET['txt_date_du'])); $txt_date_au = date("Y-m-d 23:59:59", strtotime($_GET['txt_date_au'])); $sel_societe = !empty($sel_societe) ? "$sel_societe" : "tous"; $sel_etat = !empty($sel_etat) ? "$sel_etat" : "tous"; $txt_date_du = !empty($txt_date_du) ? "$txt_date_du" : null; $txt_date_au = !empty($txt_date_au) ? "$txt_date_au" : null; if($sel_societe == "tous") {$req_sel_societe = 'card_type_name IS NOT NULL';} if($sel_societe != "tous") {$req_sel_societe = 'card_type_name = "'.$sel_societe.'"' ;} if($sel_etat == "tous") {$req_sel_etat = 'decision IS NOT NULL';} if($sel_etat != "tous") {$req_sel_etat = 'decision = "'.$sel_etat.'"' ;} try{ $sql = "SELECT signed_date_time, reference, transaction_id, auth_trans_ref_no, req_bill_to_forename, req_bill_to_surname, req_bill_to_address_line1, req_bill_to_address_city, req_bill_to_address_country, req_bill_to_email, card_type_name, req_card_number, req_card_expiry_date, reason_code, decision, req_amount, req_currency, message FROM tab_shop_visa WHERE $req_sel_societe AND $req_sel_etat AND signed_date_time BETWEEN '".$txt_date_du."' AND '".$txt_date_au."' GROUP BY signed_date_time, reference, transaction_id, auth_trans_ref_no, req_bill_to_forename, req_bill_to_surname, req_bill_to_address_line1, req_bill_to_address_city, req_bill_to_address_country, req_bill_to_email, card_type_name, req_card_number, req_card_expiry_date, reason_code, decision, req_amount, req_currency, message ORDER BY signed_date_time DESC"; }catch(PDOException $e){echo "<div class='alert alert-danger'>".$e->getMessage()."</div>";} $Stat = $pdo->prepare($sql); $Stat->execute(); $count = $Stat->rowCount($sql); if($count != 0){ $date_du_au = 'du '.strftime(DATE_SQL, strtotime($txt_date_du)).' au '.strftime(DATE_SQL, strtotime($txt_date_au)); $date_jour = strftime(DATE_TIME_SQL, strtotime(date("Y-m-d H:i:s"))); $nap = 0; while($data = $Stat->fetch(PDO::FETCH_ASSOC)){ $nap += $data["req_amount"]; echo $data["reference"]."<br>"; } else { echo "<div align='center'><div align='center' class='alert alert-warning col-md-6 p-2'>".AUCUN_RESULTAT."</div></div>"; }} ?>
6 juin 2023 à 11:54
Dans ton fichier _etat.php, retires tout ton code et à la place, mets juste un
<?php //fichier _etat.php var_dump($_GET);
Puis reteste ton code et regarde dans la console (dans l'onglet response de ton appel ajax ) ce qui s'affiche...
Si tu as bien tes variables .. c'est que ton souci vient bien de ton code php...
Pour commencer.. je n'y vois pas la connexion à la bdd
Ensuite, tu sembles utiliser une constante qui ne semble pas avoir été définie avant...
6 juin 2023 à 12:22
- Si si, la connexion existe dans mon fichier, j'ai juste pas mis dans le code posté ici.
Lorsque la "date du" est "2023-06-01" je reçois :
array(5) { ["sel_societe"]=> string(4) "tous" ["sel_etat"]=> string(4) "tous" ["txt_date_du"]=> string(10) "2023-06-01" ["txt_date_au"]=> string(10) "2023-06-30" ["_"]=> string(13) "1686046828924" }
Si je la change en "2023-01-01" j'ai la même erreur 403
Je suis en PHP 7.4
6 juin 2023 à 13:09
Si tu as bien viré tout le code de ton fichier et que tu l'as remplacé juste parce que je t'ai donné et que ça marche à tous les coups c'est que le souci vient de ton code
Si par contre ça ne marche qu'une fois sur deux ou en fonction des dates que tu aurais éventuellement mis, c'est certainement que tu as un souci au niveau de la configuration de ton serveur
Si tu n'as pas retiré tout ton code comme je te l'ai demandé et qu'en plus tu ne nous a pas montré l'entièreté du fichier comment veux-tu que l'on puisse t'aider ??
le souci semblerait à ce moment-là, venir de ton code.... Je t'invite donc à le travailler...
6 juin 2023 à 15:18
J'opte pour la configuration du serveur.
A part la ligne d'inclusion du fichier de la connexion à la base de donnée, tu as toute l'intégralité de mon code.
J'ai dupliquer les mêmes codes dans un autre site et il fonctionne très bien là-bas.
J'ai pourtant la même configuration serveur, la même version PHP, tout pareil quoi...
6 juin 2023 à 16:02
J'ai dupliquer les mêmes codes dans un autre site et il fonctionne très bien là-bas.
Preuve que ça ne vient donc pas du code.
Pour la config du serveur, là, je ne peux rien pour toi
6 juin 2023 à 16:02
Problème résolu, j'ai désactivé et réactivé mes CDN et tout est rentré dans l'ordre.
Merci encore Jordane45 pour ton aide !