Bonjour,
je suis en train de developper une application avec laravel 5.4.30, pour le controle de compte d'abonnés d'une bibliothèque. chaque abonné possedant un compte annuel. le gestionnaire depuis 2015 utilise un documment Excel ou chaque feuille represente un mois et resume le nom du membre ainsi que les infomations sur son abonnement Jai entendu parler d'une technogie pour renseigner la BD depuis un document xls.
jai suivi un tuto
La migration
public function up()
{
Schema::create('items', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->text('description');
$table->timestamps();
});
}
la vue
<form class="form-horizontal" action="{{url('importExcel')}}" enctype="multipart/form-data" method="post">
{{ csrf_field() }}
<div class="form-group">
<div class="col-md-8">
<input type="file" name="import_file" class="form-control" required>
</div>
<div class="col-md-2">
<input type="submit" class="btn btn-danger" value="Télécharger">
</div>
</div>
</form>
la route
Route::post('importExcel', 'HomeController@importExcel');
le controller
public function importExcel()
{
if(Input::hasFile('import_file')){
$path = Input::file('import_file')->getRealPath();
$data = Excel::load($path, function($reader) {
})->get();
if(!empty($data) && $data->count()){
foreach ($data as $key => $value) {
$insert[] = ['title' => $value->title, 'description' => $value->description];
}
if(!empty($insert)){
DB::table('items')->insert($insert);
dd('Insert Record successfully.');
}
}
}
return back();
}
je veux pouvoir enregistrer toutes les donnees excel dans la base de donnees'feuille apres feuille) et que la premiere ligne du tableau soit les champs de la table. pour apres afficher les comptes à terme a échéance proche et autres comptes
une erreur comme quoi la proprieté title n'existe pas.
Property [title] does not exist on this collection instance.
Bonjour,
Peux tu nous donner le lien du tutoriel que tu as suivi pour que l'on puisse analyser le comportement attendu (type de fichier Excel, organisation des feuilles de ce classeur...) ?
http://itsolutionstuff.com/post/laravel-5-import-export-to-excel-and-csv-using-maatwebsite-exampleexample.html
Bonjour,
D'après l'exemple dont tu donnes le lien, la première feuille a des entêtes de colonne (title et description), le code fait correspondre le contenu la colonne 'title' de la feuille avec le champ 'title' de la table et fait correspondre le contenu de la colonne 'description' de la feuille avec le champ 'description' de la table.
Je suppose que ta feuille ne contient pas d'entête de colonne ou qu'aucun ne se nomme 'title'.
Bonjour, dans ton code quand tu fais
dd($value)
après le foreach, qu'est ce qui s'affiche ??