0

I'm trying to print all the rows from my table I used if statement but it only return one row, so I tried to use foreach statement but it gives me an error "Warning: Illegal string offset" for each row, this is the code I'm using:

$sql = "SELECT date, km_entre, km_sortie, type, montant FROM carburant WHERE id_user = 0";
$statement = $conn->query($sql);
$res = $statement->fetch();

foreach ($res as $roww){
    echo ' <tr>
    <td>' .$roww['date']. '</td>
    <td>' .$roww['km_entre']. '</td>
    <td>' .$roww['km_sortie']. '</td>
    <td>' .$roww['type']. '</td>
    <td>' .$roww['montant']. '</td>

    </tr>';
 }

Where did I go wrong?

Dharman
  • 30,962
  • 25
  • 85
  • 135
Asin Belb
  • 1
  • 1

1 Answers1

0

for everyone having the same problem check this : Illegal string offset Warning PHP all i had to do is changing fetch() to fetchALL(PDO::FETCH_ASSOC).

Asin Belb
  • 1
  • 1