Bonjour,
Voila je rencontre un petit problème avec mon code.
j'ai commencer a construire mon systeme et je voulais charger certains éléments via ajax mais je me retrouve confronté a un probleme de localisation de mes classes.
plus precisement j'ai index qui récupére mes different corps de page les stocks en tampon puis je les reinsére dans mon template.
j'aimerais importer ces different elements via ajax mais problemes!!
define('ROOT', dirname(__DIR__));
require ROOT.'/app/App.php';
use \Core\Auth\DBAuth;
App::load();
if(isset($_GET['p'])){
$page = $_GET['p'];
}else{
$page = 'home';
}
//auth
$app = App::getInstance();
$auth = new DBAuth($app->getDb());
if(!$auth->logged()){
$app->forbidden();
}
ob_start();
if($page === 'home'){
require ROOT.'/pages/admin/posts/index.php';
}elseif($page === 'myspace'){
require ROOT.'/pages/admin/myspace/myspace.php';
}elseif($page === 'myspace.personnel'){
require ROOT.'/pages/admin/myspace/personnel.php';
}
$content = ob_get_clean();
require ROOT.'/pages/templates/admin_default.php';
le fichier template n'as rien de special
header + body + footer conventionel
le fichier que j'essaie de charger :
<?php
$app = App::getInstance();
$categories = $app->getTable('materiel_categorie')->all();
if($categories == false){
$app->notFound();
}
?>
<div class="main_panel_wrapper">
<div class="main_panel panel_top">
<div class="panel_med_wrapper">
<div class="panel_header">
<ul>
<li>
<figure><span>icone</span></figure><figure>Categorie</figure><figure>Supprimer</figure><figure>Modifier</figure>
</li>
</ul>
</div>
<div class="panel_body">
<ul>
<?php foreach($categories as $categories):?>
<li><?php echo $categories->titre ?></li>
<?php endforeach;?>
<li><figure>Ajouter une categorie</figure><figure style="display: none"></figure><figure style="display: none"></figure></li>
</ul>
</div>
</div>
</div>
</div>
et mon morceau de js:
$("#categorie_btn").click(function(){
$(".main_panel_wrapper").load("../pages/admin/materiel/categories.php", function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
alert("trop de la balle!");
if(statusTxt == "error")
alert("putain de merde ! " + xhr.status + ": " + xhr.statusText);
});
});
Fatal error: Uncaught Error: Class 'App' not found in C:\wamp64\www\pixatelier\16_back_end\pages\admin\materiel\categories.php on line
si je met mon $app dans l'index
la variable $categorie n'est pas reconnue dans le foreach
si je met tout en php ça marche nikel
merci d'avance
Bonjour.
la variable $categorie n'est pas reconnue dans le foreach
Pour que la variable $categorie
soit reconnue, il faudrait déjà qu'elle existe sur ta page, mais ce n'est pas le cas, dans le foreach
tu donnes le même nom à la variable de l'alias qu'à la variable d'origine, soit $categories
, donc comment veux-tu qu'elle puisse être reconnue ?
Est ce qu'il y a un tuto ou une serie de lessons qui combinent le php et l'ajax sur graphikart?
Je ne vois pas le rapport avec l'ajax étant donné que dans ton JavaScript tu ne récupères aucune donnée.
Sinon, pour ce qui concerne le problème de la classe App, tu inclues le fichier de la classe dans le fichier index.php, mais pas dans le fichier categories.php.
Autre chose, si tu veux charger tes classes via use, il te faut utiliser un autoloader, mais je ne te vois en utiliser aucun.