Hulp bij het volgen van een cursus kreeg ik volgende Error:

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

front-end (Angular) en back-end (Java) ontwikkelaa

Bedrijfsomschrijving DUO verzorgt als uitvoeringsorganisatie, zijnde onderdeel van het Ministerie van Onderwijs, Cultuur en Wetenschap de uitvoering van complexe wet- en regelgeving en heeft een uitgebreid dienstenpakket. DUO financiert en informeert onderwijsdeelnemers en onderwijsinstellingen. Voor verdere informatie zie www.duo.nl Functieomschrijving Wij zoeken een ontwikkelaar die breed inzetbaar is op zowel front-end (Angular) als back-end (Java). De komende periode zal het H2M team hoofdzakelijk bezig zijn met de vervanging van aCroho. Dit gebeurt grotendeels in Java waarbij de workflow door het workflowmanagement systeem Camunda wordt gedaan. Bij RIO werken we aan een nieuw register dat alle scholen en opleidingen van Nederland

Bekijk vacature »

Johan Cuypers

Johan Cuypers

18/07/2021 18:22:52
Quote Anchor link
/
Gewijzigd op 18/07/2021 19:57:16 door Johan Cuypers
 
PHP hulp

PHP hulp

25/09/2022 03:52:41
 
- Ariën  -
Beheerder

- Ariën -

18/07/2021 18:41:05
Quote Anchor link
Kan je de code beperken tot relevante code van tot +/- 20 regels?
 
Johan Cuypers

Johan Cuypers

18/07/2021 19:39:21
Quote Anchor link
Ik hoop dat dit goed is:
Ik ben een cursus aan het volgen (geschreven voor php7 en lager).
Ik krijg een error wanneer ik dit in php8.0.6 server zet:
Fatal error: Uncaught TypeError: Cannot access offset of type string on string in C:\xampp\htdocs\2021\globe_bank\private\query_functions.php:472 Stack trace: #0 C:\xampp\htdocs\2021\globe_bank\public\staff\admins\delete.php(13): delete_admin('2') #1 {main} thrown in C:\xampp\htdocs\2021\globe_bank\private\query_functions.php on line 472

delete.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
if(is_post_request()) {
  $result = delete_admin($id);
  $_SESSION['message'] = 'Admin deleted.';
  redirect_to(url_for('/staff/admins/index.php'));
}
else {
  $admin = find_admin_by_id($id);
}

?>

queryfunctions.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
  function delete_admin($admin) {
    global $db;

    $sql = "DELETE FROM gb_admins ";
    $sql .= "WHERE id='" . db_escape($db, $admin['id']) . "' ";
    $sql .= "LIMIT 1;";
    $result = mysqli_query($db, $sql);

    // For DELETE statements, $result is true/false
    if($result) {
      return true;
    }
else {
      // DELETE failed
      echo mysqli_error($db);
      db_disconnect($db);
      exit;
    }
  }

?>


line 472 => $sql .= "WHERE id='" . db_escape($db, $admin['id']) . "' ";

Kan iemand hiermee helpen wat juist de fout is (ben maar een beginner) en hoe ik dit probleem kan oplossen.

Met vriendelijke groeten
Johan

Edit:
Gebruik voortaan [code] en [/code]-tags.
HTML is hier (gelukkig) niet mogelijk. Zie ook dit overzicht van opmaakcodes die wij ondersteunen.
Gewijzigd op 18/07/2021 20:27:47 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

18/07/2021 20:25:14
Quote Anchor link
Je geeft blijkbaar in delete.php op lijn 3 (hier) een $id mee.
Maar uiteindelijk behandel je die in je functie op lijn 8 (hier) van queryfunctions.php als een array-key $admin['id'].

Met var_dump kan je precies zien wat voor type wat iets is.
 
Johan Cuypers

Johan Cuypers

18/07/2021 21:30:29
Quote Anchor link
ok dank je voor het advies :)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.