Bonjour,
je me confie vers vous les gars :

Actueluelement je travail sur un projet PHP, j'ai ecrit un scirpt php dans le but est de comparer deux deux fichiers CSV, ,stocker des info dans un fichier json, puis afficher le contenue du fichier Json dans une DataTable, il ,fonctionne parfaitement, Sauf qu'on j'integre dans le menu Laravel (FrameWork php) en MVC, il me souule, il reconnait pas la fonction Javascript du coup il genere pas la data Table.

le voici le code de la Vue.php sur laravel


@extends('layouts.app')

@section('content')

  <link rel="stylesheet" href="http://cdn.datatables.net/1.10.18/css/jquery.dataTables.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"/>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src = "http:////cdn.datatables.net/1.10.18/js/jquery.dataTables.min.js"></script>

<script type="text/javascript">

$(document).ready(function() {
    $('#example').DataTable( {
        "ajax": "/jalil/public/data.json"
    } );
} );

</script>

<style>
        .content {
            text-align: center;
        }
</style>

<div class="container">
    <div class="row">
        <div class="col-md-8 col-md-offset-2">
            <div class="panel panel-default">
                <div class="panel-heading">Dashboard</div>

                <div class="panel-body">
                    @if (session('status'))
                        <div class="alert alert-success">
                            {{ session('status') }}
                        </div>
                    @endif

                  Bienvenu  jalil Interface CSV
            </div>
            </div>
        </div>

    </div>
</div>

<div class="content">

      <table id="example" class="display" style="width:100%" border ='1'>
              <thead>
            <tr>
              <th>Host</th>
              <th>file System</th>
              <th>CSV</th>
              <th>Zabbix</th>
              <th>Warning csv</th>
              <th>Warning zabbix</th>
              <th>Critique csv</th>
              <th>Critique zabbix</th>
              <th>Procédure csv</th>
              <th>Procédure zabbix</th>
              <th>Conforme</th>
            </tr>
              </thead>
          </table>
</div>
@endsection

Je cherche a comprendre pourquoi il veut pas reconnaitre la partie JS quand j'integre le menu laravel.
S'il vous plait j'espere que quelqu'un pourra m'aider a le resoudre.

Voici l'erreur que ca donne lors de l'execution :

TypeError: $(...).DataTable is not a function

2 réponses


Bonsoir.
L'erreur est normale étant donné que ton lien au JavaScript de DataTable est incorrect, par conséquent, comme il ne peut pas être chargé, le navigateur ne peut pas connaître la fonction.
Il te faut donc supprimer deux slash sur les quatres, soit remplacer http:////cdn.datatables.net/1.10.18/js/jquery.dataTables.min.js par http://cdn.datatables.net/1.10.18/js/jquery.dataTables.min.js, réfléchissez un peux au pourquoi vous recevez les messages d'erreurs, surtout que ton problème n'a aucun rapport avec le PHP mais plutôt avec le JavaScript.

Merci Lartak pour m'avoir repondu déja,
j'ai corrigé le lien au JavaScript de DataTable comme vous me l'avez précisé,
sauf que je galére toujours avec la meme erreurqui vient de la partie JS, pourtant je parcours google depuis un moment pour chercher une solution:

Merci d'essayer de me donner des conseils s'il vous plait,