Foutmelding bij Update

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ignace Verschaeve

Ignace Verschaeve

15/10/2021 08:10:12
Quote Anchor link
Ik wil via een formulier gegevens in een database updaten maar ik krijg deze melding
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '`Naam2`=VanDenBossche,`VNaam2`=Martha,`Opmerking`= hier de opmerkingen WHERE ...' at line 1
Ik heb al veel gevonden op het internet maar niet het juiste.
Dit is mijn code:
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
 
//Inladen van de instellingen.
include '../instellingen.php';
 
$conn = new mysqli($database_adres, $database_login_naam, $database_login_wachtwoord, $database_naam);
//connectie testen
if (!$conn) {
  die("Connection failed: " . mysqli_connect_error());
}
  
$Nummer=mysqli_real_escape_string($conn,$_POST['Nummer'];
$Naam=mysqli_real_escape_string($conn,$_POST['Naam'];
$VNaam=mysqli_real_escape_string($conn,$_POST['Voornaam'];
$gebdat=mysqli_real_escape_string($conn,$_POST['Geboortedatum'];
$gebpl=mysqli_real_escape_string($conn,$_POST['Geboorteplaats'];
$overldat=mysqli_real_escape_string($conn,$_POST['Overlijdensdatum'];
$overlpl=mysqli_real_escape_string($conn,$_POST['Overlijdensplaats'];
$Type=mysqli_real_escape_string($conn,$_POST['Type'];
$BS=mysqli_real_escape_string($conn,$_POST['BS'];
$Naam2=mysqli_real_escape_string($conn,$_POST['Naam2'];
$VNaam2=mysqli_real_escape_string($conn,$_POST['Voornaam2'];
$opmerk=mysqli_real_escape_string($conn, $_POST['Opmerking']);

$sql = "UPDATE `rouwbriefnieuw` SET `Naam`= $Naam,`Voornaam`=$VNaam,`geb.datum`=$gebdat,`GebGemeente`=$gebpl ,`overl.datum`=$overldat,`OverlGemeente`=$overlpl,`Type`=$Type,`BS`=$BS,`Naam2`=$Naam2,`VNaam2`=$VNaam2,`Opmerking`= $opmerk WHERE `IDR`=$Nummer ";

if (mysqli_query($conn, $sql)) {
  echo "Record updated successfully";
}
else {
  echo "Error updating record: " . mysqli_error($conn);
}

// Sluit de MySQL verbinding.
$conn->close();

?>


Iemand een oplossing?
 
PHP hulp

PHP hulp

09/12/2021 04:54:50
 
- Ariën -
Beheerder

- Ariën -

15/10/2021 09:07:37
Quote Anchor link
Je moet je variabelen in je wuery ook tussen single quotes zetten. Anders helpt die escaping ook niet echt.

Wat enters in je query zijn ook niet overbodig. ;-)
 
Frank Nietbelangrijk

Frank Nietbelangrijk

16/10/2021 12:19:49
Quote Anchor link
Zoals Arien zegt.. en die backticks heb je ook niet nodig zolang je geen gereserveerde MYSQL woorden gebruikt voor je tabel en kolomnamen.

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
<?php
$sql
= "UPDATE rouwbriefnieuw SET
Naam='"
. $Naam . "',
Voornaam='"
. $VNaam . "',
geb.datum='"
. $gebdat . "',
GebGemeente='"
. $gebpl . "',
overl.datum='"
. $overldat . "',
OverlGemeente='"
. $overlpl . "',
Type='"
. $Type . "',
BS='"
. $BS . "',
Naam2='"
. $Naam2 . "',
VNaam2='"
. $VNaam2 . "',
Opmerking='"
. $opmerk . "'
WHERE IDR='"
. $Nummer . "'";
?>
Gewijzigd op 16/10/2021 12:21:44 door Frank Nietbelangrijk
 
Ignace Verschaeve

Ignace Verschaeve

17/10/2021 17:05:37
Quote Anchor link
- Ariën - op 15/10/2021 09:07:37:

Wat enters in je query zijn ook niet overbodig. ;-)


Sorry, ik ben nog altijd maar een leerling, wat bedoel je daarmee? Ik heb graag een voorbeeld. Een voorbeeld zegt meer dan duizend woorden :-).

En backticks wat zijn dat?
 
- Ariën -
Beheerder

- Ariën -

17/10/2021 17:33:44
Quote Anchor link
Backticks zijn dit: `
En enters... Kijk maar naar de leesbaarheid van Frank zijn query. ;-)
 
Adoptive Solution

Adoptive Solution

17/10/2021 17:41:19
Quote Anchor link
Zijn die dingetje voor en achter de veldnamen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$sql = "UPDATE `rouwbriefnieuw` SET `Naam`= $Naam,`Voornaam`=$VNaam,`geb.datum`=$gebdat,`GebGemeente`=$gebpl ,`overl.datum`=$overldat,`OverlGemeente`=$overlpl,`Type`=$Type,`BS`=$BS,`Naam2`=$Naam2,`VNaam2`=$VNaam2,`Opmerking`= $opmerk WHERE `IDR`=$Nummer ";


Kwam er achter door dit te doen.

https://www.google.com/search?q=mysql+backticks+meaning
 
Ignace Verschaeve

Ignace Verschaeve

17/10/2021 17:48:34
Quote Anchor link
Dank u jullie allemaal. Ondertussen had ik het begrepen. Een paar dagen vakantie en jullie tips hebben wonderen gedaan samen met een extra foutje dat ik ontdekt heb.
Gewijzigd op 17/10/2021 18:50:58 door Ignace Verschaeve
 



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.