Hallo,

Ik ben bezig met een ajax request. Nu heb ik het geschreven alleen krijg ik een error.
Hij geeft de fout op deze regel:
 
var oldname = "<?php echo $filename; ?>";


Dit is de hele functie met die ajax request:
 
function editItem(){
	
	var newname = prompt('Geef hier de nieuwe naam op',' ');
	var oldname = "<?php echo $filename; ?>";
	
	new Ajax.Request('xf_rename.php', { 
	            method: 'post',
	            parameters:{
	                actie: 'rename_file',
	                oudenaam: bron,
	                nieuwenaam: newname
	            }, 
	            onSuccess: renameresponse
		                     
	        });
			
}


Waar zit de fout dat deze foutmelding veroorzaakt.

al vast bedankt
Wat is de waarde van $filename?
Waar haal je die vandaan?
$filename is een variable waarmee de naam van het bestand wordt uitgelezen.
Deze wordt stukje verder in de code verwerkt.
Ja, en wat is precies de waarde? Zit daar niet toevallig een enter is of een apart teken? Ik neem aan van niet aangezien het de file name is.
dit is de code wat betreft $fielname


<div id="image_<?php echo $teller; ?>" class="filemBox" style="width:120px; height: 150px;" >
<?
			$file_name = str_replace(UPLOAD_PATH, '', $_GET['path'] . SLASH . $val);
			if(SLASH == '\\') $file_name = str_replace('/','\\',$file_name);
			$file_name = addslashes($file_name);
			if(SLASH == '/') $file_name = stripslashes($file_name);
			else $file_name = $file_name;
?>
	<div  class="filemImage"><?
			if($dim = getimagesize($_GET['path'] . SLASH . $val)){
			//fitImage ($dim[0], $dim[1], 100, 100);
			if (($dim[0] * $dim[1]) > MAX_IMAGE_SIZE) {
				$dim[0] = 100;
				$dim[1] = 62;
			} else {
				fitImage ($dim[0], $dim[1], 100, 100);
			}
?><img  src="thumb.php?image=<? echo $_GET['path'] . SLASH . urlencode(stripslashes($val)); ?>" width="<? echo $dim[0] ?>" height="<? echo $dim[1] ?>" alt="" border="1" class="placeholder"  /><?
			} else {
				# het is geen image
				if(is_file('..' . SLASH . '..' . SLASH . 'images' . SLASH . 'icons' . SLASH . '' . $file_ext . '.gif'))
					$filename = '..' . SLASH . '..' . SLASH . 'images' . SLASH . 'icons' . SLASH . '' . $file_ext . '.gif';
				else $filename = '..' . SLASH . '..' . SLASH . 'images' . SLASH . 'icons' . SLASH . 'unknown.gif';
?><img src="../../images/icons/<? echo $filename ?>" alt="" border="1" class="placeholder" /><?
			}
?>
	</div>

En als je filename echo't.

En dan even hier neer zet wat de waarde is.

Want ik zie nu dat er ook allemaal dubbele quotes (") in zitten. Dit wil jouw javascript variabele niet. Gebruik bij 1 van de 2 enkele quotes.
als ik $filename echo krijg ik het volgende :

Undefined variable: filename

Dit is wanneer ik hem appart echt. De filename leest hij gewoon uit en is zichtbaar
Wat staat er in de broncode wanneer je het normale scriptje runt? Wat staat er tussen de "" van de javascript variabele oldname?
dit staat er
 
function renameresponse() { 
alert('Naam is gewijzigt');
}

function editItem(){
	//alert('Test');
	var newname = prompt('Geef hier de nieuwe naam op',' ');
	var oldname = '<br />
<b>Notice</b>:  Undefined variable: filename in <b>/home5/www/www.medusa.nl/data/intern/projecten/basis_businessclub_js/htmlpages/onderhoud/modules/filemanager/indexfilemanager.php</b> on line <b>242</b><br />
';
	
	new Ajax.Request('xf_rename.php', { 
	            method: 'post',
	            parameters:{
	                actie: 'rename_file',
	                oudenaam: bron,
	                nieuwenaam: newname
	            }, 
	            onSuccess: renameresponse
		                     
	        });
			
}

En nu vraag je je nog steeds af waarom het niet werkt?

De variabele bestaat gewoon niet. En daarnaast is de value van oldname multiline en dat mag niet in JavaScript.

Dus even een controle maken of $filename uberhaupt gezet is.
maar hoe kan het dan zijn dat als de varialble niet bestaat, dan wel te zien is :S
Want ik echo de naam al een keer...

Reageren