Parse error: parse error, expecting `','' or `';''

Status
Niet open voor verdere reacties.

comass

Gebruiker
Lid geworden
19 dec 2000
Berichten
456
Hoi,

Ik ben bezig met een formulier.
Op het moment dat ik probeer gegevens uit de dbase te halen krijg ik deze foutmelding.

Code:
Parse error: parse error, expecting `','' or `';''

De verwijzing gaat naar dit veld:
Code:
<input type="hidden" name="subject" value="<?php echo $objekt['objekt_name'] ?>">

Ik heb alles geprobeerd maar krijg de melding er niet uit, iemand een oplossing?
 
; na je echo zetten.

dus
PHP:
<input type="hidden" name="subject" value="<?php echo $objekt['objekt_name']; ?>">
 
Hoi,

Ik heb de code geplakt in de pagina

Code:
<input type="hidden" name="subject" value="<?php echo $objekt['objekt_name']; ?>">

De foutmelding blijft echter dezelfde
 
Controleer ook de regel er boven.
 
Hoi,

Onderstaand het formulier zoals ik heb gemaakt.
Code:
<input type="hidden" name="subject" value="<? echo $objekt->objekt_name; 
?>">

Subject, of dit nu zichtbaar is of niet is verder niet van belang, maar dient uit de dbase te komen en dan krijg ik de parse error.


Code:
<?php
/******************************
*  Script:   Form Mail        *
*  Versie:   4.0              *
*  Author:   SkYcE            *
*  Released: 07-12-2006       *
******************************/
//Set sessie voor flood optie
session_start();
include("http://www.domein.eu/test/menu/header.php");
/*
** Variabelen instellen
*/

// Naam voor als afzender van het bevestigingsmailtje
$var_name      = "je naam";
// Het mail adres waarnaar de data verstuurd moet worden en afzender adres
$var_email     = "je e-mail@adres.nl";
// Bevestigingsmail naar de verstuurder aanzetten (true = aan / false = uit)
$var_confirm   = true;
// Om flooden te voorkomen (true = aan / false = uit)
$var_noflood   = true;
//Bericht wat een bezoeker te zien krijgt als er sprake is van flooden
$var_flood_msg = "U bent aan het flooden!";
//Aantal flood seconden dat het formulier buiten gebruik moet zijn na het versturen van een bericht
$var_flood_sec = 20;
// Geblokkeerde ip adressen, nieuw ip adres toevoegen is nieuwe waarde in de array
$var_ban_ips   = array('255.255.255.0');
// Bericht wat een bezoeker te zien krijgt indien diegene geblokkeerd is
$var_ban_msg   = "U bent geblokkeerd van het versturen van het contact formulier.";

/*
** Hieronder niks veranderen, tenzij je weet wat je doet
*/
//Functie voor ipadres verkrijgen
function get_ip () {
	if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
	$ipadres = $_SERVER['HTTP_X_FORWARDED_FOR'];
	} elseif(isset($_SERVER['HTTP_CLIENT_IP'])) {
	$ipadres = $_SERVER['HTTP_CLIENT_IP'];
	} else {
	$ipadres = $_SERVER['REMOTE_ADDR'];
	}
	
	return $ipadres;
}

//Host verkrijgen 
$hostmask = gethostbyaddr(get_ip()); 
// Formulier weergeven 
$form_view = true;
//Formulier versturen, als er iets misgaat word $ok = false 
$ok = true; 
// Bestandsnaam verkrijgen
$filename = basename($_SERVER['PHP_SELF']);
// Errors
$error = '';

if($_SERVER['REQUEST_METHOD'] == 'POST') {
    if(!eregi("[A-Za-z0-9_-]+([.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([.]{1}[A-Za-z0-9-]+)+", $_POST['E-mail*'])) {  
        $ok = false;  
        $error .= '- <a href="javascript:history.back(1)">U heeft geen geldig e-mail adres ingevuld.</a><br />';  
    } 
   
// E-mail naar $var_email (webmaster)
$msg_2_admin = "

".$_POST['Aanhef*']."  ".$_POST['Voorletter*']." ".$_POST['Achternaam*']."
".$_POST['Adres*']." 
".$_POST['Postcode*']." ".$_POST['Woonplaats*']."
Email:     ".$_POST['E-mail*']."
Telefoon: ".$_POST['Telefoonummer*']."

Bericht:

".$_POST['Opmerking*']."

--------------------------------
Deze e-mail is verzonden vanaf:
IP adres: ".get_ip()."
Hostadres: ".$hostmask;

// E-mail naar $_POST['E-mail*'] (poster)
$msg_2_poster = "Geachte ".$_POST['Aanhef*']." ".$_POST['Achternaam*'].", 

Hartelijk dank voor de door u getoonde interesse in de ".$_POST['subject'].".
Wij zullen u zo spoedig mogelijk een antwoord geven op de door u gestelde vraag of opmerking.

Wij hebben de volgende gegevens van u ontvangen:

Uw opmerking of vraag: 
".$_POST['Opmerking*']."

Uw gegevens:

".$_POST['Aanhef*']."  ".$_POST['Voorletter*']." ".$_POST['Achternaam*']."
".$_POST['Adres*']." 
".$_POST['Postcode*']." ".$_POST['Woonplaats*']."
Email:     ".$_POST['E-mail*']."
Telefoon: ".$_POST['Telefoonummer*']."


Met vriendelijke groet,




".$_POST['var_name'];



	if(in_array(get_ip(),$var_ban_ips)) {
		echo $var_ban_msg;
		$form_view = false;
	} elseif ($var_noflood == true && (time()-$_SESSION["antiflood"]) <= $var_flood_sec) {
		echo $var_flood_msg;
		$form_view = false;
	} elseif ($ok == true) {
           @$send = mail($var_email,
        			  "".$_POST['subject'],
        			  $msg_2_admin,
        			  "From: ".$_POST['Voorletter*']." ".$_POST['Achternaam*']."<".$_POST['E-mail*'].">");
        
		if($send == 1) {  
			if($var_confirm == true){  
				mail($_POST['E-mail*'],
					 "Ontvangstbevestiging: ".$_POST['subject'],
					 $msg_2_poster,
					 "From: ".$var_name."<".$var_email.">");  

			}
			
			echo'Geachte '.$_POST['Aanhef*'].' '.$_POST['Achternaam*'].',';
			
			if($var_confirm == true){  
				echo'<br /><br />Uw bericht is verzonden, bedankt voor uw reactie.'; 
				echo'<br /><br />Er is een bevestigingsmail onderweg met wat u heeft ingevuld.'; 
						} 
		}else{  
			echo'Beste '.$_POST['Achternaam*'].', uw bericht is helaas niet verzonden.<br /><br />
			Er is een fout opgetreden bij het verzenden. Wij zullen proberen het probleem zo snel mogelijk
			te verhelpen.<br /><br />
			
			Mocht dit probleem na enkele dagen niet verholpen zijn,neem dan contact op met de
			<a href="mailto:'.$var_email.'">Webmaster</a><br /><br />
			
			Bedankt voor uw medewerking.';  
		} 
		
		$form_view = false;
		
		$_SESSION["antiflood"] = time();
	}
}

/*
** Formulier
*/
if($form_view == true) {
	echo '
	<html>
	<head>
	    <title>Contactformulier</title>
	<link rel="stylesheet" type="text/css" href="style.css" />
	  <script type="text/javascript" src="validate.js"></script>
	<link rel="stylesheet" type="text/css" href="http://www.domein.eu/test/menu/chrometheme/chromestyle.css" />
	<script type="text/javascript" src="http://www.domein.eu/test/menu/chromejs/chrome.js"></script>
	 <link rel="stylesheet" type="text/css" href="http://www.domein.eu/test/menu/style.css" />
	
	    <style type="text/css">
	    	
			BODY{
			background-color:#000000;
				font-color: #ffffff;
			}
			TABLE {
			}font-family: Garamond;
	    		font-size:12px;
			font-color:#ffffff;
				}
	    	td {
	    		font-family: Garamond;
	    		font-size:12px;
			font-color:#ffffff;
			background-color:#000000;
	    	}
	    </style>
</head>
	
	<body>';
	
	if($error != '') {
		echo '<font style="color:#FF0000;"><b>'.$error.'</b></font><br />';
	}
	
	echo '<form method="post" action="verstuur.php" onsubmit="return validateForm(this, true);">
<html>

<head>
</head>
<?
include("connect.inc.php");

$objekt_SQL="SELECT * FROM im_objekte WHERE im_objekte.objekt_ID=$ID";
$objekt=mysql_fetch_array(mysql_query($objekt_SQL));
?>

<body bgcolor="black" text="white" link="#F05624" vlink="#F05624" alink="#F05624">
<div id="formarea">
<table width="925" border="0" cellspacing="0" cellpadding="0" align="center"> 
	<tr> 
	    <td align="right" colspan="3" width="725">
            <p align="left"><font color="white" size="5" face="Garamond"><b>Informatie 
            aanvraag </b></font></p>
</td> 
	</tr> 
	<tr> 
	    <td align="right" height="24" width="163">	    <font color="white" face="Garamond"><span style="font-size:13pt;"><label for="aanhef">Aanhef 
            : &nbsp;</label></span></font></td> 
	    <td align="right" height="24" width="10">	    
                <p>&nbsp;</p>
</td> 
	    <td height="24" width="552"> 
	    
    <font color="white" face="Garamond"><span style="font-size:13pt;"><input type="radio" name="Aanhef*" id="aanhef" value="heer" /> Dhr
  <input type="radio" name="Aanhef*" id="Aanhef*" value="mevrouw" /> Mevr.</span></font> 
	    </td> 
	</tr> 
	<tr> 
	    <td align="right" width="163"><font color="white" face="Garamond"><span style="font-size:13pt;">Voorletters:</span></font></td>
	    <td align="right" width="10">
                <p>&nbsp;</p>
</td>
	    <td height="24" width="552"> <font face="Garamond"><span style="font-size:13pt;"></label><input type="text" name="Voorletter*" id="Voorletters*" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" / size="7"></span></font></td> 
	</tr> 
	<tr> 
	    <td align="right" width="163"><font color="white" face="Garamond"><span style="font-size:13pt;">Achternaam</span></font></td>
	    <td align="right" width="10">
                <p>&nbsp;</p>
</td>
	    <td height="24" width="552"><font face="Garamond"><span style="font-size:13pt;"><label for="Achternaam"></label><input type="text" name="Achternaam*" id="Achternaam*" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" /></span></font></td> 
	</tr> 
	<tr> 
    <td align="right" width="163"><font face="Garamond" color="white"><span style="font-size:13pt;">Adres</span></font></td>
    <td align="right" width="10">
                <p>&nbsp;</p>
</td>
	    <td height="24" width="552"><font face="Garamond"><span style="font-size:13pt;"><label for="Adres"></span></font><font face="Garamond" color="white"><span style="font-size:13pt;"></label><input type="text" name="Adres*" id="Adres*" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" /></span></font>  </td> 
	</tr> 
	<tr> 
	    <td align="right" width="163">
            <p><font face="Garamond" color="white"><span style="font-size:13pt;">Postcode</span></font></p>
</td> 
	    <td align="right" width="10">
                <p>&nbsp;</p>
</td> 
	    <td height="24" width="552">
            <p><font face="Garamond"><span style="font-size:13pt;"><label for="Postcode"></span></font><font face="Garamond" color="white"><span style="font-size:13pt;"></label> 
            <input type="text" name="Postcode*" id="Postcode*" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" / size="7"></span></font></p>
</td> 
	</tr> 
	<tr> 
	    <td align="right" width="163">
            <p><font face="Garamond" color="white"><span style="font-size:13pt;">Woonplaats</span></font></p>
</td> 
	    <td align="right" width="10">
                <p>&nbsp;</p>
</td> 
	    <td height="24" width="552">
            <p><font face="Garamond"><span style="font-size:13pt;"><label for="Woonplaats"></label><input type="text" name="Woonplaats*" id="Woonplaats*" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" /></span></font></p>
</td> 
	</tr> 
	<tr> 
	    <td align="right" width="163"><font color="white" face="Garamond"><span style="font-size:13pt;">Telefoonnummer:</span></font></td> 
	    <td align="right" width="10">
                <p>&nbsp;</p>
</td> 
	    <td height="24" width="552"><font face="Garamond"><span style="font-size:13pt;"><label for="Telefoonnummer"></label><input type="text" name="Telefoonummer*" id="Telefoonnummer*" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" /></span></font></td> 
	</tr> 
	<tr> 
	    <td align="right" width="163"><font color="white" face="Garamond"><span style="font-size:13pt;">E-mailadres:</span></font></td> 
	    <td align="right" width="10">
                <p></p>
</td> 
	    <td height="24" width="552"><font face="Garamond"><span style="font-size:13pt;"><label for="E-mail"></label><input type="text" name="E-mail*" id="email" class="text" onfocus="gotFocus(this);" onblur="lostFocus(this);" /></span></font></td> 
	</tr> 
	<tr> 
	     <td align="right" valign="top" width="163"><font color="white" face="Garamond"><span style="font-size:13pt;">Vraag 
            of opmerking:</span></font></td>   
	     <td align="right" valign="top" width="10">
                <p>&nbsp;</p>
</td>   
	    <td width="552"><font face="Garamond"><span style="font-size:13pt;"><label for="Opmerking*"></span></font><font face="Garamond" color="white"><span style="font-size:13pt;"></label>
  <textarea name="Opmerking*" id="Opmerking*" class="textarea" cols="75" rows="5" onfocus="gotFocus(this);" onblur="lostFocus(this);"></textarea></span></font></td> 
	</tr> 
	<tr> 
	    	    <td width="173" colspan="2"><font color="white" face="Garamond">&nbsp;</font></td> 
	    <td width="552"><font color="white" face="Garamond"><input type="submit" name="submit" value="Versturen"></font></td> 
	</tr> 
	</table>
</div>
	<p>';
}
?>
<?php include("http://www.domein.eu/test/menu/footer.php")?> 
<p>&nbsp;</p>
</body>
</form>
</html>


</form>
 
Maak van:

PHP:
<input type="hidden" name="subject" value="<? echo $objekt->objekt_name; ?>">

eens:

PHP:
<input type="hidden" name="subject" value="<?php echo $objekt->objekt_name; ?>">

Veel servers hebben shorttags (<? ?>) op disabled staan.
 
Hoi,

Dan krijg ik dit als onderwerp.
Code:
<?php echo $objekt->objekt_name; ?>
 
ik heb datzelfde probleem nog gehad. Om de een of andere reden interpreten een aantal servers een php-commando binnen een value-attribuut niet goed. De oplossing is om het woord value zelf mee te echo'en:
PHP:
<input type="hidden" name="subject" <?php echo 'value="' . $objekt->objekt_name . '"'; ?> >
Let er ook op dat er een spatie blijft staan tussen ?> en de > van je input, ook hier had ik al problemen mee..
 
Nou ik nog eens naar je script zit te kijken, zie ik dat je formulier ook helemaal laat echoën.

Ik dacht dat je dat buiten <?php ?> tags had staan.

Waarschijnlijk is het opgelost door waar je

PHP:
<input type="hidden" name="subject" value="<? echo $objekt->objekt_name; 
?>">

Had staan, dit neer te zetten:

PHP:
<input type="hidden" name="subject" value="' . $objekt->objekt_name . '">
 
Dat zijn eigenlijk wel slechte servers dan, als ze dat echt niet kunnen interpreteren... dat is gewoon valide syntax :/

Weet je zeker dat je niet gewoon ergens wat haakjes verkeerd had staan?
 
Je doelt op de shorttags?

Die kun je in PHP.ini uitzetten, zodat je je bijvoorbeeld ook <?xml kunt printen. Als shorttags aanstaan, krijg je daar een parse-error.
 
Voor zover ik weet zijn ze bij mijn WAMP server standaard uitgeschakeld bij installatie, de short open tags..

maar sowieso ik gebruik liever <?php is duidelijker :thumb:

edit:
Xampp heeft dat niet, lampp ook niet (maar xampp is lamp voor windows >,<)
 
Laatst bewerkt:
de short tags staan op een standaard php installatie inderdaad uitgeschakeld
dus neem ik aan ook op xampp lampp,wampp.

en het feit dat die het value atribuut niet interpreteren zou mij wel redelijk verbazen.
Want dat heb ik nog nooit aan de hand gehad en ik heb ook al op verschillende servers geprogrammeerd.


owja even off-topic

Erwinski
Xampp is niet Lampp voor windows
Xampp is de cross-platform versie van Lampp
Wampp is de widows versie :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan