ik heb met hulp van iemand heb ik een php feedback gemaakt maar elke keer na de eerste post (met rating) maakt hij een nieuwe lege post met andere woorden dat betekend als iemand als eerst een 10 geeft dat dan het gem. een 5 is omdat hij een nieuwe automatisch aanmaakt met de rating 0 weet iemand waar ik de fout in zou gegaan zijn. zo ziet het eruit na de eerst post:

<entries><entry/><entry><ip>127.0.0.1</ip><published>2008-06-19 15:13:46</published><naam>test</naam><rating>10</rating><feedback>test </feedback></entry></entries>

de <entry/> zorgt voor die post maar ik kan hem alleen hier weghalen maar telkens blijft de fout zich voortdoen. help
ik volg je niet helemaal...

Plaats eens wat relevante code tussen [ignore]
[/ignore]
Post inderdaad wat relevante code, we kunnen natuurlijk niet jouw code gaan gokken ;)
ok
Erik, hier kunnen we niets mee ;)
<?php
include 'config.php'; // Hier staat $dataFile in
	if($_SERVER['REQUEST_METHOD'] == 'POST') {
		// Formulier verwerken
		if(!file_exists($dataFile)) {
			// Bestand aanmaken
			$input = '<?xml version="1.0"?>'.PHP_EOL.'<entries>'.PHP_EOL.'</entries>';
			file_put_contents($dataFile, $input);
			// Ophalen
			$xmlStr = file_get_contents($dataFile);
			$xml = new SimpleXMLElement($xmlStr);
			// Toevoegen
			$entry = $xml->addChild('entry');
			$entry->addChild('ip', $_SERVER['REMOTE_ADDR']);
			$entry->addChild('published', date('Y-m-d H:i:s'));
			// Nu de rating en feedback
			// Eerst de input valideren
			if(isset($_POST['rating']) && ctype_digit($_POST['rating'])) {
				// Nogmaals de input valideren
				if(!empty($_POST['feedback']) && !empty($_POST['naam'])) {
					$entry->addChild('naam', $_POST['naam']);
					$entry->addChild('rating', $_POST['rating']);
					$entry->addChild('feedback', $_POST['feedback']);
					// Wegschrijven
					if(file_put_contents($dataFile, $xml->asXML())) {
						echo 'Bedankt voor uw feedback.';
					} else {
						echo 'Error: Er is wat fout gegaan bij het toevoegen van de feedback.';
					}
				} else {
					echo 'Sorry, maar u behoort enige feedback te geven.';
				}				
			} else {
				echo 'Sorry, maar de data die verwerkt moest worden is corrupt.';
			}
		} else {
			// Kijken of gebruiker al gestemd heeft
			$xmlStr = file_get_contents($dataFile);
			$xml = new SimpleXMLElement($xmlStr);
			
			$exists = 0;
			// Door de entries lopen en kijken of er een match is
			foreach($xml->entry as $entry) {
				if($entry->ip == $_SERVER['REMOTE_ADDR'] && $entry->userAgent == $_SERVER['HTTP_USER_AGENT']) {
					$exists = 0;
				} else {
					$exists = 0;
				}
			}

			if($exists) {
				// Er is een match; al gestemd
				echo 'U heeft al feedback gegeven.';
			} else {
				// Er is geen match; nog niet gestemd, dus toevoegen maar
				$entry = $xml->addChild('entry');
				$entry->addChild('ip', $_SERVER['REMOTE_ADDR']);
				$entry->addChild('published', date('Y-m-d H:i:s'));
				// Nu de rating en feedback
				// Eerst de input valideren
				if(isset($_POST['rating']) && ctype_digit($_POST['rating'])) {
					// Nogmaals de input valideren
					if(!empty($_POST['feedback'])) {
						$entry->addChild('naam', $_POST['naam']);
						$entry->addChild('rating', $_POST['rating']);
						$entry->addChild('feedback', $_POST['feedback']);
						// Wegschrijven
						if(file_put_contents($dataFile, $xml->asXML())) {
							echo 'Bedankt voor uw feedback.';
						} else {
							echo 'Error: Er is wat fout gegaan bij het toevoegen van de feedback.';
						}
					} else {
						echo 'Sorry, maar u behoort enige feedback te geven.';
					}				
				} else {
					echo 'Sorry, maar de data die verwerkt moest worden is corrupt.';
				}
			}
		}		
	} else {
		// Formulier weergeven
?>


dat is de code, daar moet de fout ergens tussen staan
Nu nog even tussen de [ignore]
[/ignore] tags plaatsen zodat we het kunnen lezen :)
zo beter
Stukken beter :)

Erik, je hoeft me echt niet een Interne Bericht te sturen of ik je even wilt helpen hoor :)

Reageren