Ik heb nog een tabel gemaakt om gegevens in de tabel te wijzigen:



<html>
     <head>
          <title>Wijzigen Plantenrijk-gegevens</title>
          <meta charset=ütf-8">
     </head>
     <body>
          <form method="post">
            <p>Wijzigen de plantenrijkgevens in:</p>
            <p><input type = "text" size = "25" name = "Beschrijving"></p>
			      <p><input type = "submit" name="submit" value = "Wijzig!"></p>
          </form>

<?php

if (!empty($_POST['submit']))
	{
	include ("connectDBplanten.php");
	//query opstellen
  $Plantenrijk = $_POST['Beschrijving'];
  $query = "UPDATE $Plantenrijk SET Beschrijving ='Mossen' WHERE ID_plantenrijk = 1";
	//query runnen
	$result = mysqli_query($conn, $query) or die(mysqli_error($conn));
	}
?>
</body>
</html>



Vraag wat gaat er mis?




Moet regel 20 niet zijn :

$query = "UPDATE plantenrijk SET Beschrijving ='$Plantenrijk' WHERE ID_plantenrijk = 1";


Het is ook handig om ID_plantenrijk in de FORM op te nemen, daar anders record met ID_plantenrijk = 1 altijd wordt gewijzigd.
Je afbeelding werkt niet. Volgens mij voeg je een website in die tag i.p.v. afbeelding.
<meta charset=tf-8">
ontbreekt aanhalingsteken en een u
<meta charset="utf-8">
Er staat inderdaad ü i.p.v. "u.

Heerlijk die toetsenborden ;-)

Maar goed, wat er mis gaat is dat variabelen tussen een single-quote niet verwerkt worden. Je zal dan dus altijd de tekst van je variabele zien. Eigenlijk moet je variabelen gewoon buiten quotes houden (,of anders tussen dubbele quotes). Maar als je ze buiten quotes laat is het wel makkelijk te lezen. Vooral in je editor door de ingebouwde 'higlighting'.


<?php
$var = "En dit is een variabele";
echo "Dit staat in een quote. ".$var.", en dit staat weer in een quoted-string";
?>

Geeft:
Dit staat in een quote. En dit is een variabele, en dit staat weer in een quoted-string
Met de punt kan je een variabele bijvoorbeeld koppelen aan een string, of een andere variabele. In het code-blok hierboven zie je dat $var blauw is omdat het een variabele is, terwijl de string er omheen weer rood is.

Je kan ook de double-quotes in dit voorbeeld vervangen door single-quotes, en dan is de uitkomst hetzelfde. Puur omdat je de variabelen buiten quotes houdt. Deed je dat niet, dan zag je de variabelen als tekst.

Reageren