In een eerdere topic had ik mijn probleem al vermeld.
Maar doordat ik die topic niet meer kan lezen door het menu dat er steeds voorspringt, start ik een nieuwe topic hierover op
Mijn probleem was dus dat de regel:
window.location.href = "Timer.php?minuten=" + minutes_passed;

een fout geeft, alhoewel ik mijn fout niet vind. Altijd als het vraagteken er achter komt, geeft het problemen. Kan iemand mij helpen

Hier is de volledige code:

<form name="timeform" method="POST">
Time: <input type=text name="timetextarea" value="00:00" size="10" style = "font-size:20px"><br>
<br>
<input type=button name="start" value="Start" onclick="sw_start()"> 
<input type=button name="stop" value="Stop" onclick="Stop()"> 
<input type=button name="reset" value="Reset" onclick="Reset()">
<input type=button name="Verzend" value="Verzend" onclick="Send()">
</form>
<script language="JavaScript">
 
var timercount = 0;
var timestart  = null;
 
function showtimer() {
	if(timercount) {
		clearTimeout(timercount);
		clockID = 0;
	}
	if(!timestart){
		timestart = new Date();
	}
	var timeend = new Date();
	var timedifference = timeend.getTime() - timestart.getTime();
	timeend.setTime(timedifference);
	var minutes_passed = timeend.getMinutes();
	if(minutes_passed < 10){
		minutes_passed = "0" + minutes_passed;
	}
	var seconds_passed = timeend.getSeconds();
	if(seconds_passed < 10){
		seconds_passed = "0" + seconds_passed;
	}
	document.timeform.timetextarea.value = minutes_passed + ":" + seconds_passed;
	timercount = setTimeout("showtimer()", 1000);
}
 
function sw_start(){
	if(!timercount){
	timestart   = new Date();
	document.timeform.timetextarea.value = "00:00";
	timercount  = setTimeout("showtimer()", 1000);
	}
	else{
	var timeend = new Date();
		var timedifference = timeend.getTime() - timestart.getTime();
		timeend.setTime(timedifference);
		var minutes_passed = timeend.getMinutes();
		if(minutes_passed < 10){
			minutes_passed = "0" + minutes_passed;
		}
		var seconds_passed = timeend.getSeconds();
		if(seconds_passed < 10){
			seconds_passed = "0" + seconds_passed;
		}
		var milliseconds_passed = timeend.getMilliseconds();
		if(milliseconds_passed < 10){
			milliseconds_passed = "00" + milliseconds_passed;
		}
		else if(milliseconds_passed < 100){
			milliseconds_passed = "0" + milliseconds_passed;
		}
	}
}
 
function Stop() {
	if(timercount) {
		clearTimeout(timercount);
		timercount  = 0;
		var timeend = new Date();
		var timedifference = timeend.getTime() - timestart.getTime();
		timeend.setTime(timedifference);
		var minutes_passed = timeend.getMinutes();
		if(minutes_passed < 10){
			minutes_passed = "0" + minutes_passed;
		}
		var seconds_passed = timeend.getSeconds();
		if(seconds_passed < 10){
			seconds_passed = "0" + seconds_passed;
		}
		var milliseconds_passed = timeend.getMilliseconds();
		if(milliseconds_passed < 10){
			milliseconds_passed = "00" + milliseconds_passed;
		}
		else if(milliseconds_passed < 100){
			milliseconds_passed = "0" + milliseconds_passed;
		}
		document.timeform.timetextarea.value = minutes_passed + ":" + seconds_passed + "." + milliseconds_passed;
	}
	timestart = null;
}
 
function Reset() {
	timestart = null;
	document.timeform.timetextarea.value = "00:00";
}

function Send() {
	window.location.href = "Timer.php?minuten=" + minutes_passed;

}
 
</script>


Timer.php

<?php
$Tijd = $_POST['minuten'];
echo "gelukt";
echo $Tijd;
?>

Wat er in Timer.php staat is nog miniem. Maar het is nu gewoon nog proberen mijn variabelen van Javascript door te krijgen naar PHP
ten eerste zie ik dat je $_POST gebruikt met de hoop om GET waardes op te halen in timer.php
heb ik ook al geprobeerd. Haalt niets uit.
als je in de foutconsole kijkt (van firefox) dan zie je dat zodra je op verzend klikt er een foutmelding komt met 'minutes_passed is not defined'

ik gok erop dat het een probleem is met de lokale variabele maar als je het zo doet werkt het wel,


<form name="timeform" method="get" action="timer.php">
Time: <input type=text name="timetextarea" value="00:00" size="10" style = "font-size:20px"><br>
<br>
<input type="button" name="start" value="Start" onclick="sw_start()"> 
<input type="button" name="stop" value="Stop" onclick="Stop()"> 
<input type="button" name="reset" value="Reset" onclick="Reset()">
<input type="submit" name="Verzend" value="Verzend" onclick="">
</form>
<script language="JavaScript">


de javascript kan je laten staan behalve de send() functie,
en de timer.php

<?php
if(!empty($_GET['timetextarea'])){
$Tijd = @$_GET['timetextarea'];
echo "gelukt ";
echo $Tijd;
}
?>

als je de $_GET in $_POST veranderd en in de form method="post" zet dan krijg je ook niet zo'n volle url ;)
Nosferatu
bedankt voor je hulp
ik had ook net de foutconsole van firefox ontdekt =D
En daardoor vond ik ook mijn fout. Maar ik zit nu nog een beetje te knoien met de lange URL en dergelijke.
Als het mij niet lukt op mijn manier dat ik van plan was, dan ga ik zeker jou manier proberen.
Bedankt!!
Nosferatu
jou manier lijkt mij toch niet te lukken. Ik krijg de variabelen niet uit de textarea.
Probleem is opgelost!
mooi zo, succes ermee!

Reageren