Bug dans l'affichage des données d'une table avec beaucoup de lignes
Bonjour les amis !
Je rencontre un problème dans l'affichage des données de mes tables, j'utilise laravel 9 et une base de données mySql 5.7.36 wampserver 3.2.6 64 bits et php 7.4.26 .
Ma requête concerne les données de jointure en deux de mes tables 'entreprises' et 'annuaires'.
Lorsque ma vue charge, j'ai parfois elle s'affiche parfaitement avec mes données, mais parfois j'ai une erreur 500 qui est récurrente.
voici ma route: Route::get('/Pratik-ListeEntreprise', [Controller::class, 'getListeEntreprises'])->name('getListeEntreprises');
voici ma fonction: public function getListeEntreprises(){
$entreprises = Annuaire::join('entreprises','entreprises.ID','annuaires.ENTREPRISE_ID')
->orderBy('entreprises.TITRE')
->get();
return view('admin.Listes.listeEntreprise',compact('entreprises'));
}
j'ai cherché le prblème sans solution, j'ai besoin de votre aide.
Merci pour vos solutions!
Salut,
As-tu le détail de ton erreur 500 ?
J'ai essayé de prendre que 5000 lignes au lieu du total qui fait plus de 19.000 lignes, le problème est résolu. Mais je ne suis pas satisfait, je me demande pourquoi mon système n'arrive pas à afficher le total de mes données? pourquoi le bug? Est-ce un problème avec laravel 9 ou je me suis mal pris?
Au risque de me répeter : as-tu le détail de ton erreur 500 ? TU as un screenshot de ton retour d'erreur ? Si tu essaie d'afficher 19 000 enregistrements, ça me parait pas déconnant que ça te fasse une erreur serveur.
Comment heberge-tu ton projet ? WAMP? Si oui, quelles sont es valeurs de php.ini ?
Sur un projet ou j'avais une page pouvant afficher environ 800 000 lignes (oui oui) j'ai abandonné la pagination de laravel et je suis parti sur Datatable avec un chargement côté serveur.
C'est vraiment top, la gestion de l'ordre des colonnes, le champs de recherche dynamique, les pages, tous fonctionne vraiment nickel !! ( sauf mon Mysql ) qui est au bord du gouffre pour lancer la requête, mais je n'ai plus d'erreurs 500.
Vous ne pouvez pas répondre à ce sujet.