Bonjour à tous j'ai un problème avec l'insertion de plusieurs row(input de même nom )dans la base de données. Une fois le code exécuté je reçois le massage d'erreur suivant:
conversion de tableau en chaîne dans C:\wamp64\www\orders\app\Models\Model.php à la ligne 83

Mon Modele
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
 
namespace App\Models;
use Database\DBConnection;
use PDO;
 
abstract class Model{
 
protected $db;
protected $table;
 
public function __construct(DBConnection $db){
$this->db = $db;
}
 
public function create(array $data, ?array $relations = null){
 
$firstParenthesis = "";
$secondParenthesis = "";
$i = 1;
 
foreach($data as $key => $value){
$comma = $i === count($data) ? "" : ", ";
$firstParenthesis .= "{$key}{$comma}";
$secondParenthesis .= ":{$key}{$comma}";
$i++;
}
 
return $this->query("INSERT INTO {$this->table} ($firstParenthesis) VALUES ($secondParenthesis)",$data);
}
Mon Controller
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
namespace App\Controllers;
use App\Models\Da;
use App\Models\Fournisseur;
use App\Models\User;
 
 
class DaController extends Controller{
 
public function CreateDaPost(){
$da = new Da($this->getDB());
$result=$da->create($_POST);
var_dump($result); die();
 
if($result){
return header('Location:/templates/showAllDA.php');
}else{
return header('Location:/templates/DaForm');
}
 
}

Mon formulaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<body>
<div class="row">
<div class="container">
<div class="card-header"><h3 class="text-center font-weight-light my-4"><?= $params['devis']->designation ?? 'Nouvelle demande achat' ?></h3></div>
 
<div class="card-body">
<form method="POST" action="<?= isset($params['devis']) ? "/templates/edit_Da/{$params['devis']->id}" : "/templates/DaForm"?>">
 
 
<div class="row" >
<div class="col-md-4" class="ingredient-form">
<label>Service demandeur</label>
<input type="text" name="service[]" class="form-control" value="<?= $params['devis']->service ?? '' ?>">
 
</div>
<div class="col-md-4" class="ingredient-form">
<label>N°Devis</label>
<input type="text" name="num[]" class="form-control" value="<?= $params['devis']->num ?? '' ?>">
 
</div>
<div class="col-md-4" class="ingredient-form">
<label>Fournisseur</label>
<select type="text" name="fournisseur[]" class="form-control">
<?php foreach($params['four'] as $four): ?>
<option></option>
<option value="<?= $four->id; ?>"><?= $four->raison_soc;?></option>
<?php endforeach;?>
 
</select>
</div>
</div>
<div class="row" >
<div class="col-md-4" class="ingredient-form">
<label>Demandeur</label>
<input type="text" name="user[]" class="form-control" value="">
 
</div>
<div class="col-md-4" class="ingredient-form">
<label>Moyen de transport</label>
<select type="text" name="mode[]" class="form-control">
<option></option>
<option value="Terrestre">Terrestre</option>
<option value="Avion">Avion</option>
<option value="Bateau">Bateau</option>
</select>
 
</div>
 
<div class="col-md-4" class="ingredient-form">
<label>Priorité</label>
<select type="text" name="priorite[]" class="form-control">
<option></option>
<option value="Normale">Normale</option>
<option value="Urgente">Urgente</option>
<option value="Très urgente">Très urgente</option>
</select>
 
</div>
 
</div>
 
<hr/>
 
 
<input id='add-more' class="col-lg-2 mt-2" type="submit" value="+ Ligne demande achat">
<input type="submit" class="btn-primary" value="<?= isset($params['devis'])?'Enregistrer les mises à jour' : "Envoyer l'approbation"; ?>" > <hr/>
<div class="row " id="ingredient-form-list">
<div class="col-md-3" class="ingredient-form">
<label>Code</label>
<input type="text" name="code[]" class="form-control" value="<?= $params['devis']->code ?? ''; ?>">
 
</div>
<div class="col-md-3" class="ingredient-form">
<label>Désignation</label>
<input type="text" name="designation[]" class="form-control" value="<?= $params['devis']->designation ?? ''; ?>">
</div>
<div class="col-md-3" class="ingredient-form">
<label>Qté</label>
<input type="text" name="qte[]" class="form-control" value="<?= $params['devis']->qte ?? ''; ?>">
</div>
<div class="col-md-3" class="ingredient-form">
<label>PU</label>
<input type="text" name="pu[]" class="form-control" value="<?= $params['devis']->pu ?? ''; ?>">
</div>
 
</div>
<div class="row hidden" id="empty-form">
<div class="row">
<div class="col-md-3">
<label></label>
<input type="text" name="code[]" class="form-control">
 
</div>
<div class="col-md-3">
<label></label>
<input type="text" name="designation[]" class="form-control">
 
</div>
<div class="col-md-2">
<label></label>
<input type="text" name="qte[]" class="form-control">
</div>
 
<div class="col-md-3">
<label></label>
<input type="text" name="pu[]" class="form-control">
</div>
<div class="col-md-1">
<label></label>
<button type="submit" class="btn btn-danger">Retiré</button>
</div>
 
</div>
</div>
 
 
 
</form>
</div>
</div>
<script>
const addMoreBtn = document.getElementById('add-more')
addMoreBtn.addEventListener('click',add_new_form)
function add_new_form(event) {
if (event) {
event.preventDefault()
}
const formCopyTarget = document.getElementById('ingredient-form-list')
const emptyFormEl = document.getElementById('empty-form').cloneNode(true)
emptyFormEl.setAttribute('class', 'ingredient-form')
formCopyTarget.append(emptyFormEl)
 
}
</script>
 
</body>