Met onderstaande pagina invoeren.php loop ik tegen de volgende foutmelding aan:
Parse error: syntax error, unexpected T_STRING in /home/vanede/domains/westernunity.com/public_html/db/invoeren.php on line 20

Toch pas ik precies toe, wat er in les 13 wordt geschreven op: http://www.essetee.be/newphp/index.php

Ook heb ik de indruk, dat er geen verbinding wordt gelegd met de database, aangezien in de phpMyAdmin niets zichtbaar wordt.

Wie helpt me verder?

<?php
include("header.html");
include("db_adressen.php");
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");

if(isset($_POST[invoeren])) {
$voornaam=$_POST[voornaam];
$achternaam=$_POST[achternaam];
$straat=$_POST[straat];
$geboortedatum=$_POST[geboortedatum];
$postcode=$_POST[postcode];
$adres=$_POST[adres];
$woonplaats=$_POST[woonplaats];

$sql=" INSERT into adressen (voornaam,achternaam,straat,geboortedatum,postcode,adres,woonplaats) VALUES ('$voornaam','$achternaam','$straat','$geboortedatum','$postcode','$adres','$woonplaats')";
$res=mysql_db_query("$db","$sql",$mysql_id);

$fout=mysql_errno($mysql_id);
if ($fout != 0) {
    $fout=mysql_error($mysql_id);
    echo '<font color="#FF2306">' . $fout . '</font>';
    mysql_close($mysql_id);
    echo '</body></html>';
    exit;
    }

else {
    echo '<div align="center"><h3>De gegevens werden correct weggeschreven naar de database</h3></div>';
}

}
else {
?>

<form action="<?php echo $_SERVER[PHP_SELF];?>" method="post"
<table>
<tr><td>Voornaam :</td><td><input type="text" name="voornaam"></td></tr>
<tr><td>Achternaam :</td><td><input type="text" name="achternaam"></td></tr>
<tr><td>Straat :</td><td><input type="text" name="straat"></td></tr>
<tr><td>Nummer :</td><td><input type="text" name="geboortedatum"></td></tr>
<tr><td>Postcode :</td><td><input type="text" name="postcode"></td></tr>
<tr><td>Adres :</td><td><input type="text" name="adres"></td></tr>
<tr><td>Woonplaats :</td><td><input type="text" name="woonplaats"></td></tr>
<tr><td>&nbsp;</td><td>&nbsp;</td></tr>
<tr><td><input type="submit" name="invoeren" value="Gegevens invoeren"></td></tr>
</table>
</form>
<?php
}
include("footer.html");
?>
zet even alles tussen code -tags
Ik heb de inhoud aan je gemaild, aangezien blijkbaar alleen de php-code er tussen wordt gezet.
Bedankt voor je snelle reactie!
Beste Henk,

Probeer je PHP code overzichtelijk te houden zodat je fouten er snel tussen uit kan pikken.
<?php
include("header.html");
include("db_adressen.php");
$mysql_id = mysql_connect("$dbhost","$dbuser","$dbpass");

if ( isset($_POST['invoeren']) ) {

$voornaam = $_POST['voornaam'];
$achternaam = $_POST['achternaam'];
$straat = $_POST['straat'];
$geboortedatum = $_POST['geboortedatum'];
$postcode = $_POST['postcode'];
$adres = $_POST['adres'];
$woonplaats = $_POST['woonplaats'];

$sql = "INSERT INTO
adressen (voornaam,achternaam,straat,geboortedatum,postcode,adres,woonplaats)
VALUES
('" . $voornaam . "','" . $achternaam . "','" . $straat . "','" . $geboortedatum . "','" . $postcode . "','" . $adres . "','" . $woonplaats . "')";

$res = mysql_db_query("$db","$sql",$mysql_id);

$fout = mysql_errno($mysql_id);

if ($fout != 0) {
$fout = mysql_error($mysql_id);
echo '<font color="#FF2306">' . $fout . '</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
else {
echo '<div align="center"><h3>De gegevens werden correct weggeschreven naar de database</h3></div>';
}
}
else {
?>

Ik heb dit stukje niet getest maar misschien word nu wel het één en ander duidelijk. Als je weer een foutmelding krijgt, laat het dan even weten.

Nog een tip voor je: lees de volgende tutorials even door, denk dat je er veel aan hebt!
MySQL beginners handleiding
En eventueel:
PHP beginners handleiding

Jeroen
De HTML wordt meegeparsed als je de PHP code binnen de code-tags nog eens tussen [ignore]
[/ignore] zet. Zie ook de FAQ

Toch pas ik precies toe, wat er in les 13 wordt geschreven op: http://www.essetee.be/newphp/index.php
Ik heb niet veel goeds over dit online 'boek' gehoord. Je kunt beter wat anders zoeken.

Helaas zie ik ook zo 1,2,3 de fout niet. :(
Misschien ligt het probleem in de bestanden die je include..?

Jeroen
Zet dit bovenin je script.
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);

// rest
?>
Zelfs die code levert een foutmelding op:
Parse error: syntax error, unexpected T_STRING in /home/vanede/domains/westernunity.com/public_html/db/invoeren.php on line 2
Probeer eens zo:

<?php
	require 'header.html';
	require 'db_adressen.php';
	
	mysql_connect ($dbhost, $dbuser, $dbpass) or die ('geen connectie');
	mysql_select_db ($dbname) or die ('geen database geselecteerd'); // deze variabelenaam even checken

	if ($_SERVER['REQUEST_METHOD'] == 'POST') {
		$sql = "
			INSERT INTO adressen
			(
				voornaam,
				achternaam,
				straat,
				geboortedatum,
				postcode,
				adres,
				woonplaats
			) 
            VALUES
			(
				'" . mysql_real_escape_string ($_POST['voornaam']) . "',
				'" . mysql_real_escape_string ($_POST['achternaam']) . "',
				'" . mysql_real_escape_string ($_POST['straat']) . "',
				'" . mysql_real_escape_string ($_POST['geboortedatum']) . "',
				'" . mysql_real_escape_string ($_POST['postcode']) . "',
				'" . mysql_real_escape_string ($_POST['adres']) . "',
				'" . mysql_real_escape_string ($_POST['woonplaats']) . "'
			)
			";
		if (mysql_query ($sql)) {
			if (mysql_affected_rows ()) {
				$msg = 'record toegevoegd';
			}
		}
		else {
			trigger_error (mysql_error ());
			$msg = htmlentities ($sql);
		}
	}
?>     


Edit: en dan $msg natuurlijk nog ergens echoën.
Edit: en dan $msg natuurlijk nog ergens echoën.

Dat begrijp ik (nog) niet ;-)

Maar ik krijg nu de volgende foutmelding:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/vanede/domains/westernunity.com/public_html/db/invoeren.php on line 2

Overigens fijn, zoals iedereen meedenkt!

Reageren