Archief - php: stomme mysql error

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Wack0

Legacy Member
Ik ben sinds gisteren begonnen met php --> noob dus.
En alles werkt alleen met deze code:
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
if ($_POST['submit']) {
include 'config.php';
$query = "INSERT INTO nieuws (titel, inhoud) VALUES ('$_POST[titel]', '$_POST[bericht]')";
mysql_query($query) or die (mysql_error);
?>
Post verzonden.<br>
<a href="verzenden.php">Nieuws bericht.</a>
<a href="bekijken.php">Belijk berichten.</a>
<?php
} else {
?>
<form action="verzenden.php" method="post">
<p>Titel:</p><br />
<input type="text" name="titel" maxlength="50" size="30" />
<p>Bericht:</p><br />
<textarea name="bericht" cols="30" rows="4"></textarea>
<br />
<input type="submit" value="voeg toe" name="submit" />
</form>
<?php
}
?>
</body>
</html>
Krijg ik volgende fout:
Notice: Undefined index: submit in c:\program files\easyphp1-7\www\wf\verzenden.php on line 10

line 10: if ($_POST['submit']) {

Ik vind het raar aangezien alles werkt mar kom iemand een oplossing ?

Mvg
WacKo

servi

Legacy Member
if ( !empty($_POST['index']) )

die notice vertelt u dat index niet bestaat en dat je dus moeilijk kan controleren op zijn waarde.

Een betere methode is dus dat je dus controleert of hij bestaat en dat hij niet leeg en dit doe je door !empty($variabelenaam)

dJeez

Legacy Member
Een iets betere oplossing zou zijn :
Code:
if (isset($_POST['submit']))
Dan kan je ook 0 of een lege string als geldige waarde doorgeven, wat bij het gebruik van empty niet kan (in dit specifieke geval maakt het uiteraard niet veel uit, maar voor andere zaken misschien wel).

DarkBone

Legacy Member
Dit is toch ook niet helemaal correct hoor:

$query = "INSERT INTO nieuws (titel, inhoud) VALUES ('$_POST[titel]', '$_POST[bericht]')";

Da moet worden:

$query = "INSERT INTO nieuws (titel, inhoud) VALUES ('" . $_POST['titel'] . "', '" . $_POST['bericht'] . "')";
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan