javascript en php

Status
Niet open voor verdere reacties.

haroim

Gebruiker
Lid geworden
21 feb 2007
Berichten
196
Ik heb een vraag waar javascript en php in zit. Maar omdat het probleem volgens mij vooral bij javascript gedeelte zit heb ik de vraag in dit gedeelte gezet.

Ik probeer een code te maken waarmee ik bepaalde tekst kan verbergen en kan tonen. Maar als ik een bepaalt iets verander werkt het javascrip gedeelte opeen niet meer volledig.


Hier doet het script het nog wel goed:
PHP:
echo "function verstopKeuze$nummer(){\n";
	
echo "	var strRes = \"Uw keuze: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(!parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRes += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol2';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/$geheim';\n";


for ($nummer1 = 0; $nummer1 < $aantal_rijen; $nummer1++) {
	$geheimlegen="geheim" . $nummer1;
	$leegvullen="leeg" . $nummer1;
for ($nummer1 = 0; $nummer1 < $nummer4; $nummer1++) {	
echo "			document.getElementById('leeg').id = '$geheim';\n";
echo "			document.getElementById('leeg').id = '$geheim';\n";
echo "			document.getElementById('leeg').id = '$geheim';\n";

}
}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRes);\n";
echo "}\n";

echo "function toonKeuze$nummer(){\n";
	
echo "	var strRese = \"Uw keuze2: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRese += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol1';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/';\n";


for ($nummer1 = 0; $nummer1 < $nummer2; $nummer1++) {
echo "			document.getElementById('$geheim').id = 'leeg';\n";
echo "			document.getElementById('$geheim').id = 'leeg';\n";
echo "			document.getElementById('$geheim').id = 'leeg';\n";

}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRese);\n";
echo "}\n";
 
echo "  //-->\n";
echo "</script>\n";

Maar als ik van leeg $leeg maak, dan voert het het script uit tot de eerste alert. Hij maakt het gedeelte dus nog wel geheim, hij toont (leeg betekend dat die het script mag tonen) niets meer, en er komen ook geen alerts meer:

PHP:
verstopKeuze$nummer(){\n";
	
echo "	var strRes = \"Uw keuze: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(!parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRes += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol2';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/$geheim';\n";


for ($nummer1 = 0; $nummer1 < $aantal_rijen; $nummer1++) {
	$geheimlegen="geheim" . $nummer1;
	$leegvullen="leeg" . $nummer1;
for ($nummer1 = 0; $nummer1 < $nummer4; $nummer1++) {	
echo "			document.getElementById('$leeg').id = '$geheim';\n";
echo "			document.getElementById('$leeg').id = '$geheim';\n";
echo "			document.getElementById('$leeg').id = '$geheim';\n";

}
}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRes);\n";
echo "}\n";

echo "function toonKeuze$nummer(){\n";
	
echo "	var strRese = \"Uw keuze2: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRese += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol1';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/';\n";


for ($nummer1 = 0; $nummer1 < $nummer2; $nummer1++) {
echo "			document.getElementById('$geheim').id = '$leeg';\n";
echo "			document.getElementById('$geheim').id = '$leeg';\n";
echo "			document.getElementById('$geheim').id = '$leeg';\n";

}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRese);\n";
echo "}\n";
 
echo "  //-->\n";
echo "</script>\n";

Wie kan mij helpen de fout hierin te vinden?
 
Omdat dit niet het volledige script is (neem ik aan), is het vrij lastig de fout te vinden. Kun je misschien het hele script eens plaatsen?
 
Het script bestaat uit 2 pagina's. Deze pagina zit in een iframe:

PHP:
<?php
$aantal_rijen=$_GET['aantalvragen'];
$path = getcwd().'/pics';

//$dh = opendir($path);
//echo "<br>Directories <br>************************* <br>";
//  while (($dir = readdir($dh)) !== false) {
//       if ( $dir != "." && $dir != ".." ){
//           $file = @fopen("$path/$dir", "r");
//                if (!$file){
//                     echo "<a href='pics/$dir'>$dir</a><br>";
//                 }
//       }
//  }
// closedir($dh);

echo "<table border=1>";
 $dh = opendir($path);
 $dh2 = opendir($path);
//echo "<br>Files <br>************************* <br>";

///////////////////////// het aantal plaatjes tellen /////////////////////////////
while (($dir = readdir($dh)) !== false) {
	    if ( $dir != "." && $dir != ".." ){
           $file = @fopen("$path/$dir", "r");
                 if ($file){ 
$nummer2++;

}
}
}
closedir($dh);
//////////////////////// het aantal plaatjes geteld /////////////////////////////////
  echo "<form name='lol1'><input type='text' name='proef1' value=''></form>";
 ?>


<?php
  while (($dir = readdir($dh2)) !== false) {
	    if ( $dir != "." && $dir != ".." ){
           $file = @fopen("$path/$dir", "r");
                 if ($file){ 
	for ($nummer = 0; $nummer < $aantal_rijen; $nummer++) {
		$huidige_figuur="huidig_figuur" . $nummer;
		$huidige_figuur_pointer="huidige_figuur_pointer" . $nummer;
		$geheim="geheim" . $nummer;
		$leeg="leeg" . $nummer;
		echo $geheim;
		echo $leeg;
		
echo "<style>#$geheim {display: none; visibility: hidden;}</style>";
$nummer4=$nummer2;
$nummer4=$nummer4*$aantal_rijen;
echo "$nummer2 en $nummer4";	
echo "<script language= \"JavaScript\">\n";
echo "<!--\n";

echo "function verstopKeuze$nummer(){\n";
	
echo "	var strRes = \"Uw keuze: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(!parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRes += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol2';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/$geheim';\n";


for ($nummer1 = 0; $nummer1 < $aantal_rijen; $nummer1++) {
	$geheimlegen="geheim" . $nummer1;
	$leegvullen="leeg" . $nummer1;
	for ($nummer3 = 0; $nummer3 < $nummer2; $nummer3++) {
echo "			document.geheim.geheim.id = '$geheim';\n";
echo "			document.geheim.geheim.id = '$geheim';\n";
echo "			document.geheim.geheim.id = '$geheim';\n";

}
}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRes);\n";
echo "}\n";

echo "function toonKeuze$nummer(){\n";
	
echo "	var strRese = \"Uw keuze2: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRese += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol1';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/';\n";


for ($nummer4 = 0; $nummer4 < $nummer2; $nummer4++) {
echo "			document.getElementById('$geheim').id = 'leeg';\n";
echo "			document.getElementById('$geheim').id = 'leeg';\n";
echo "			document.getElementById('$geheim').id = 'leeg';\n";

}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRese);\n";
echo "}\n";
 
echo "  //-->\n";
echo "</script>\n";
echo "\n <br>leeg: $leeg<br>";
        echo "<tr><td><form name='geheim'><div name='geheim' id='leeg'><img src=\"pics/$dir\"  width=\"60\"HEIGHT=\"40\"></div><td><div name='geheim' id='leeg'><a window.open('pics/$dir', '_maaktaal', 'HEIGHT=300,resizable=yes,scrollbars=yes,);return false;\" target=\"_maaktaal\" class=\"nav\" href='pics/$dir'>$dir</a></div><td><div name='geheim' id='leeg'><A href=# onclick=parent.document.invoer.$huidige_figuur.value='pics/$dir';>+ toevoegen</a>\n<br></div></form>";
}   } 
      
   }
   
}
closedir($dh2); 
echo "</table>";

?>

Dit scriptje wordt aangestuurd door deze pagina:

(bijna helemaal onderdaan: echo " NAME='huidige_figuur_pointer' onclick=\"iframe_figuur_kiezen_02.verstopKeuze$nummer();iframe_figuur_kiezen_02.toonKeuze$nummer()\"; VALUE='$huidige_figuur_pointer'>Huidige figuur: <td><input type='text' name='$huidige_figuur' ><tr>";};)

PHP:
<?PHP
$aantal_rijen=$_GET['aantalvragen'];
$les=$_GET['les'];
$oefening=$_GET['oefening'];
$module=$_GET['module'];
$maxfout=$_GET['maxfout'];
//iframe_figuur_kiezen_02.document.lol1.proef1.value='lol1';
			//document.invoer.huidig_figuur0.value='pics';
			
echo "<HTML>";
echo "<head>";
?>
<script language= "JavaScript">
<!--
function toonKeuze(){
	
	var strRes = "Uw keuze: ";
	for(var i = 0; i < invoer.huidige_figuur_pointer.length ; i++){
		if(invoer.huidige_figuur_pointer[i].checked){
			strRes += invoer.huidige_figuur_pointer[i].value;
			
		}
	}
	alert(strRes);
}



//-->
</script>
</head>
<body link="blue" alink="red" vlink="blue">
<table Border=0 CELLPADDING=10 WIDTH=100%>
<TR>
<h1>Het maken van een nieuwe oefening<h1>
<?php

// verbinding met de database maken om beschikbare talen op te halen
require("base/basis_143_d24.php");
$dbh=mysql_connect("$dbhost","$dbuser","$dbpass");
if (!$dbh) {
        echo "<br><br>";
    echo "<font color=\"#FF0000\"> ERROR ! Ik kan geen verbinding maken met de $db database.</font><br>\n";
    echo "</body></html>";
    exit;
} else {
	
}



echo "<h1>Les $les, oefening $oefening, module: $module";

echo "<Form name='invoer' Method='post' Action='verwerking.php'><br>";
echo "<h4> Naam van de oefening:  <Input type='text' size=50 name='naam_oefening'></h4>";
echo "<h4> Taal: <SELECT NAME=\"taal\">";

$res=mysql_db_query("$db","select * from talen;",$dbh);
$fout=mysql_errno($dbh);
if ($fout != 0) {
	$fout=mysql_error($dbh);
	echo "<font color=\#FF0000\">$fout</font>2";
	mysql_close($dbh);
	echo "</body></html>";
	exit;
	}	
$aantaltalen=mysql_num_rows($res);
for($taalnummer = 0; $taalnummer < $aantaltalen; $taalnummer++)
{ 
$row=mysql_fetch_row($res);
$taal_taal=$row[1];
$afkorting_taal=$row[2];

echo "<OPTION VALUE=\"$afkorting_taal\">$taal_taal";
}
echo "</SELECT>"; 


?>


(
<span  class="nav"><a href="maaktaal.php" onclick="window.open('maaktaal.php', '_maaktaal', 'HEIGHT=300,resizable=yes,scrollbars=yes,WIDTH=869, HEIGHT=667,LEFT=77,TOP=2');return false;" target="_maaktaal" class="nav">maak een nieuwe taal aan</a></span>
)

<?php
if($module=='1-plaatje-boven'){
echo "<br><br>Een bestaande figuur kiezen:<br><IFRAME name='iframe_figuur_kiezen_01' SRC=\"opendir.php\" WIDTH=\"600\" HEIGHT=\"175\" FRAMEBORDER=\"10\" CLASS=\"cssvbiframe\">";
echo "</IFRAME><br>";

echo "<br><br>Figuren uploaden:<br><IFRAME name='iframe_figuurladen_01' SCROLLING='no'WIDTH=\"600\" HEIGHT=\"160\" SRC=\"upload.php\"  FRAMEBORDER=\"0\" CLASS=\"cssvbiframe\">";
echo "</IFRAME><br>";
echo "Huidige figuur: <input type='text' name='huidigefiguur' >";
}
if($module=='plaatje-voor-vraag'){
echo "<br><br>Een bestaande figuur kiezen:<br><IFRAME name='iframe_figuur_kiezen_02' SRC=\"opendir_2.php?aantalvragen=$aantal_rijen\" WIDTH=\"600\" HEIGHT=\"175\" FRAMEBORDER=\"10\" CLASS=\"cssvbiframe\">";
echo "</IFRAME><br>";

echo "<br><br>Figuren uploaden:<br><IFRAME name='iframe_figuurladen_02' SCROLLING='no'WIDTH=\"600\" HEIGHT=\"160\" SRC=\"upload.php\"  FRAMEBORDER=\"0\" CLASS=\"cssvbiframe\">";
echo "</IFRAME><br>";

}
//doorgeven hoeveel rijen ik gebruik

echo "<input type='hidden' name='aantal_rijen' value=$aantal_rijen>";
//begin met de loop
for ($nummer = 0; $nummer < $aantal_rijen; $nummer++) {
	$name_vraag = "vraag" . $nummer;
	$naam_antwoord = "antwoord" . $nummer;
	$naam_mogelijkheid_2 = "mogelijkheid_2" . $nummer;
	$naam_mogelijkheid_3 = "mogelijkheid_3" . $nummer;
	$naam_mogelijkheid_4 = "mogelijkheid_4" . $nummer;
	$naam_mogelijkheid_5 = "mogelijkheid_5" . $nummer;
	$naam_mogelijkheid_6 = "mogelijkheid_6" . $nummer;
	$naam_mogelijkheid_7 = "mogelijkheid_7" . $nummer;
	$naam_mogelijkheid_8 = "mogelijkheid_8" . $nummer;
	$huidige_figuur="huidig_figuur" . $nummer;
	$huidige_figuur_pointer="huidige_figuur_pointer" . $nummer;
echo "<TR BGCOLOR='#F0F8FF' ALIGN=CENTER VALIGN=TOP WIDTH=100%>";
$nummer_pp = $nummer;
$nummer_pp++;
echo "<TR><TH>";	
echo $nummer_pp . "<TD>"; 
echo "<table>";
if($module=='plaatje-voor-vraag'){
	
// ;\"iframe_figuur_kiezen_02.toonKeuze$nummer()\"
//	\"iframe_figuur_kiezen_02.verstopKeuze$nummer()\"
	echo "<td><INPUT TYPE='radio' ";
	if($huidige_figuur_pointer=='huidige_figuur_pointer0'){
		echo "checked";}
		echo " NAME='huidige_figuur_pointer'   onclick=\"iframe_figuur_kiezen_02.verstopKeuze$nummer();iframe_figuur_kiezen_02.toonKeuze$nummer()\"; VALUE='$huidige_figuur_pointer'>Huidige figuur: <td><input type='text' name='$huidige_figuur' ><tr>";};
echo " <td>Vraag: <td><Input type='text' size=80 name='$name_vraag'><tr>";
echo " <td>Antwoord: <td><Input type='text' size=80 name='$naam_antwoord'><tr>";
echo " <td>mogelijkheid 2: (ook volledig goed)  <td><Input type='text' size=80 name='$naam_mogelijkheid_2'><tr>";
echo " <td>mogelijkheid 3: (ook volledig goed)  <td><Input type='text' size=80 name='$naam_mogelijkheid_3'><tr>";
echo " <td>mogelijkheid 4: (ook volledig goed)  <td><Input type='text' size=80 name='$naam_mogelijkheid_4'><tr>";
echo " <td>mogelijkheid 5:  <td><Input type='text' size=80 name='$naam_mogelijkheid_5'><tr>";
echo " <td>mogelijkheid 6:  <td><Input type='text' size=80 name='$naam_mogelijkheid_6'><tr>";
echo " <td>mogelijkheid 7:  <td><Input type='text' size=80 name='$naam_mogelijkheid_7'><tr>";
echo " <td>mogelijkheid 8:  <td><Input type='text' size=80 name='$naam_mogelijkheid_8'><tr></table><TD>";

echo "<br><br>";
}
echo "</table>";
//einde van de loop
echo "<table><tr>directorie's</tr>";
echo "<tr><td><input type=text name=dir1 size=20>/<td><input type=text name=dir2 size=20>/<td><input type=text name=dir3 size=20>/<td><input type=text name=dir4 size=20>/<td><input type=text name=dir5 size=20><td></table>";


echo "<br>Opmerkingen (komt boven aan de oefening):<br>";
echo "<textarea rows='3' name='opmerkingen' cols='58'></textarea>";
echo "<br><br><table><TR><td>";
echo "Les: </td><td WIDTH=40%><input type=text name=les value='$les' size=1></td></tr>";
echo "<tr><td WIDTH=60%>oefening: </td><td WIDTH=40%><input type=text name=oefening value='$oefening' size=1></td></tr>";
echo "<tr><td WIDTH=60%>Module: </td><td WIDTH=40%><SELECT NAME=\"module\">";
echo "<OPTION VALUE=\"woord\"";
if($module==woord){echo "SELECTED";}
echo ">woorden  ";
echo "<OPTION VALUE=\"zin\"";
if($module==zin){echo "SELECTED";}
echo ">zinnen ";
echo "<OPTION VALUE=\"1-plaatje-boven\"";
if($module=='1-plaatje-boven'){echo "SELECTED";}
echo ">1 plaatje boven  ";
echo "</SELECT></td></tr>";
echo "<tr><td>max fout: </td><td><input type=text size=1 name=maxfout maxlength=255 value=$maxfout></td></tr>";
echo "</table>";
?>
<br><td><br>Gelijk puliceren?  <td><input type='checkbox' name='publiceren' checked Value=1><br><br>
<input type="submit" name="submit" value="oefening toevoegen">
</form>

Alvast bedankt voor de hulp.
 
Je gebruikt voor drie div's dezelfde id, dat is geen goed idee! ;)

PHP:
<style type="text/css">
 .verborgen {visibility: hidden;}
 .zichtbaar {visibility: visible;}
</style>

<div id="div1" class="verborgen">tekst div 1</div>
<div id="div2" class="verborgen">tekst div 2</div>
<div id="div3" class="verborgen">tekst div 3</div>

<script type="text/javascript">
 document.getElementById('div1').className = 'zichtbaar';
 document.getElementById('div2').className = 'verborgen';
</script>
werkt beter. :)


Vr.Gr. Egel.
 
bedankt voor de hulp, ik zal kijken of het nu wel werkt. :thumb:
 
Laatst bewerkt:
Het is nog niet opgelost, maar al wel wat overzichtelijker. Ik heb nu nog een vraag. Hoe stop je variable in javascript bij elkaar. Ik wil in dit geval een woord met een cijfer erbij geven, en het cijfer moet van een variable komen. Hoe doe ik dit?
 
Zo:
PHP:
for (var i = 1; i < 4; i++) {
 document.getElementById('div' + i).className = 'zichtbaar';
 };
:) Als je maar één opdracht tussen de { } hebt staan kan je ze ook weglaten:
PHP:
for (var i = 1; i < 4; i++) document.getElementById('div' + i).className = 'zichtbaar';


Vr.Gr. Egel.
 
Hoe kan ik deze lijn:

PHP:
<tr><td><form name='geheim'><div name='geheim' id='$zichtbaar1'><img src=\"pics/$dir\"  width=\"60\"HEIGHT=\"40\"></div><td><div name='geheim' id='$zichtbaar2'><a window.open('pics/$dir', '_maaktaal', 'HEIGHT=300,resizable=yes,scrollbars=yes,);return false;\" target=\"_maaktaal\" class=\"nav\" href='pics/$dir'>$dir</a></div><td><div name='geheim' id='$zichtbaar3'><A href=# onclick=parent.document.invoer.$huidige_figuur.value='pics/$dir';>+ toevoegen</a>\n<br></div></form>

in een document.write('') zetten? Ik heb al wat geprobeert met escapen, maar dat lukt op de een of andere manier niet.

[edit]
misschien is de vraag beter gesteld als:

wat is er fout aan deze code:
PHP:
echo "document.write(\"<tr><td><form name='geheim'><div name='geheim' id='$zichtbaar1'><img src='pics/$dir'  width='60' HEIGHT='40'></div><td><div name='geheim' id='$zichtbaar2'><a window.open('pics/$dir', '_maaktaal', 'HEIGHT=300,resizable=yes,scrollbars=yes,);return false;' target='_maaktaal' class='nav' href='pics/$dir'>$dir</a></div><td><div name='geheim' id='$zichtbaar3'><A href=# onclick=parent.document.invoer.$huidige_figuur.value='pics/$dir';>+ toevoegen</a>\n<br></div></form>\");";
 
Laatst bewerkt:
Volgens mij is er niks fout aan. Je moet natuurlijk de script tags niet vergeten, maar bij mij werkt het gewoon.
 
Bij mij laat hij geen plaatjes in de tabel meer zien.

Dit is de gehele code die ik nu heb voor die pagina:

PHP:
<?php
$aantal_rijen=$_GET['aantalvragen'];
$path = getcwd().'/pics';

//$dh = opendir($path);
//echo "<br>Directories <br>************************* <br>";
//  while (($dir = readdir($dh)) !== false) {
//       if ( $dir != "." && $dir != ".." ){
//           $file = @fopen("$path/$dir", "r");
//                if (!$file){
//                     echo "<a href='pics/$dir'>$dir</a><br>";
//                 }
//       }
//  }
// closedir($dh);

echo "<table border=1>";
 $dh = opendir($path);
 $dh2 = opendir($path);
//echo "<br>Files <br>************************* <br>";

///////////////////////// het aantal plaatjes tellen /////////////////////////////
while (($dir = readdir($dh)) !== false) {
	    if ( $dir != "." && $dir != ".." ){
           $file = @fopen("$path/$dir", "r");
                 if ($file){ 
$nummer2++;

}
}
}
closedir($dh);
//////////////////////// het aantal plaatjes geteld /////////////////////////////////
  echo "<form name='lol1'><input type='text' name='proef1' value=''></form>";
 ?>


<?php
  while (($dir = readdir($dh2)) !== false) {
	    if ( $dir != "." && $dir != ".." ){
           $file = @fopen("$path/$dir", "r");
                 if ($file){ 
	for ($nummer = 0; $nummer < $aantal_rijen; $nummer++) {
		$huidige_figuur="huidig_figuur" . $nummer;
		$huidige_figuur_pointer="huidige_figuur_pointer" . $nummer;
		$verborgen="verborgen" . $nummer;
		$zichtbaar1="zichtbaar1" . $nummer;
		$zichtbaar2="zichtbaar2" . $nummer;
		$zichtbaar3="zichtbaar3" . $nummer;
	
		
echo "<style type=\"text/css\"> ";
echo " .$verborgen {visibility: hidden;} ";
echo " .$verborgen1 {visibility: hidden;} ";
echo " .$verborgen2 {visibility: hidden;} ";
echo " .$verborgen3 {visibility: hidden;} ";
echo " .$zichtbaar {visibility: visible;} ";
echo " .$zichtbaar1 {visibility: visible;} ";
echo " .$zichtbaar2 {visibility: visible;} ";
echo " .$zichtbaar3 {visibility: visible;} ";
echo "</style>";
$nummer4=$nummer2;
$nummer4=$nummer4*$aantal_rijen;
echo "$nummer2 en $nummer4";	
echo "<script language= \"JavaScript\">\n";
echo "<!--\n";

echo "function verstopKeuze$nummer(){\n";
	
echo "	var strRes = \"Uw keuze: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(!parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRes += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol2';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/$geheim';\n";


for ($nummer1 = 0; $nummer1 < $aantal_rijen; $nummer1++) {
	$geheimlegen="verborgen" . $nummer1;
	$leegvullen="leeg" . $nummer1;
	for ($nummer3 = 0; $nummer3 < $nummer2; $nummer3++) {
echo "			document.getElementById('$zichtbaar1').className = '$verborgen';\n";
echo "			document.getElementById('$zichtbaar2').className = '$verborgen';\n";
echo "			document.getElementById('$zichtbaar3').className = '$verborgen';\n";

}
}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRes);\n";
echo "}\n";

echo "function toonKeuze$nummer(){\n";
	
echo "	var strRese = \"Uw keuze2: \";\n";
echo "	for(var i = 0; i < parent.invoer.huidige_figuur_pointer.length ; i++){\n";
echo "		if(parent.invoer.huidige_figuur_pointer[i].checked){\n";
echo "			strRese += parent.document.invoer.huidige_figuur_pointer[i].value;\n";
echo "			document.lol1.proef1.value='lol1';\n";
echo "			parent.document.invoer.$huidige_figuur.value='pics/';\n";


for ($nummer4 = 0; $nummer4 < $nummer2; $nummer4++) {
echo "			document.getElementById('$verborgen').id = '$zichtbaar1';\n";
echo "			document.getElementById('$verborgen').id = '$zichtbaar2';\n";
echo "			document.getElementById('$verborgen').id = '$zichtbaar3';\n";

}

echo "		}\n";
echo "	}\n";
	
echo "alert(strRese);\n";
echo "}\n";

        echo "document.write(\"<tr><td><form name='geheim'><div name='geheim' id='$zichtbaar1'><img src='pics/$dir'  width='60' HEIGHT='40'></div><td><div name='geheim' id='$zichtbaar2'><a window.open('pics/$dir', '_maaktaal', 'HEIGHT=300,resizable=yes,scrollbars=yes,);return false;' target='_maaktaal' class='nav' href='pics/$dir'>$dir</a></div><td><div name='geheim' id='$zichtbaar3'><A href=# onclick=parent.document.invoer.$huidige_figuur.value='pics/$dir';>+ toevoegen</a>\n<br></div></form>\");";

echo "  //-->\n";
echo "</script>\n";
echo "";        
        }   } 
      
   }
   
}
closedir($dh2); 
echo "</table>";

?>
 
php > " javascript > ' html > "
PHP:
<?php
 $zichtbaar1 = "ZICHTBAAR1";
 $zichtbaar2 = "ZICHTBAAR2";
 $zichtbaar3 = "ZICHTBAAR3";
 $dir = "DIR";
 $huidige_figuur = "HUIDIGE_FIGUUR";

 echo "document.write('<tr><form name=\"geheim\">');\n";
 echo "document.write('<td><div id=\"$zichtbaar1\"><img src=\"pics/$dir\" width=\"60\" height=\"40\"></div></td>');\n";
 echo "document.write('<td><div id=\"$zichtbaar2\"><a onclick=\"window.open('pics/$dir','_maaktaal','height=300,resizable=yes,scrollbars=yes');return false\" target=\"_maaktaal\" class=\"nav\" href=\"pics/$dir\">$dir</a></div></td>');\n";
 echo "document.write('<td><div id=\"$zichtbaar3\"><a onclick=\"parent.document.invoer.$huidige_figuur.value='pics/$dir';return false\" href=\"#\">+ toevoegen</a></div></td>');\n";
 echo "document.write('</form></tr>');\n";
?>
geeft als uitvoer:
PHP:
document.write('<tr><form name="geheim">');
document.write('<td><div id="ZICHTBAAR1"><img src="pics/DIR" width="60" height="40"></div></td>');
document.write('<td><div id="ZICHTBAAR2"><a onclick="window.open('pics/DIR','_maaktaal','height=300,resizable=yes,scrollbars=yes');return false" target="_maaktaal" class="nav" href="pics/DIR">DIR</a></div></td>');
document.write('<td><div id="ZICHTBAAR3"><a onclick="parent.document.invoer.HUIDIGE_FIGUUR.value='pics/DIR';return false" href="#">+ toevoegen</a></div></td>');
document.write('</form></tr>');
Maar waarom schrijf je een php script om javascript te schrijven om html te schrijven? :eek: ;)

Waarom niet de html in 1x met de php? :)


Vr.Gr. Egel.
 
php > " javascript > ' html > "
PHP:
<?php
 $zichtbaar1 = "ZICHTBAAR1";
 $zichtbaar2 = "ZICHTBAAR2";
 $zichtbaar3 = "ZICHTBAAR3";
 $dir = "DIR";
 $huidige_figuur = "HUIDIGE_FIGUUR";

 echo "document.write('<tr><form name=\"geheim\">');\n";
 echo "document.write('<td><div id=\"$zichtbaar1\"><img src=\"pics/$dir\" width=\"60\" height=\"40\"></div></td>');\n";
 echo "document.write('<td><div id=\"$zichtbaar2\"><a onclick=\"window.open('pics/$dir','_maaktaal','height=300,resizable=yes,scrollbars=yes');return false\" target=\"_maaktaal\" class=\"nav\" href=\"pics/$dir\">$dir</a></div></td>');\n";
 echo "document.write('<td><div id=\"$zichtbaar3\"><a onclick=\"parent.document.invoer.$huidige_figuur.value='pics/$dir';return false\" href=\"#\">+ toevoegen</a></div></td>');\n";
 echo "document.write('</form></tr>');\n";
?>
geeft als uitvoer:
PHP:
document.write('<tr><form name="geheim">');
document.write('<td><div id="ZICHTBAAR1"><img src="pics/DIR" width="60" height="40"></div></td>');
document.write('<td><div id="ZICHTBAAR2"><a onclick="window.open('pics/DIR','_maaktaal','height=300,resizable=yes,scrollbars=yes');return false" target="_maaktaal" class="nav" href="pics/DIR">DIR</a></div></td>');
document.write('<td><div id="ZICHTBAAR3"><a onclick="parent.document.invoer.HUIDIGE_FIGUUR.value='pics/DIR';return false" href="#">+ toevoegen</a></div></td>');
document.write('</form></tr>');
Maar waarom schrijf je een php script om javascript te schrijven om html te schrijven? :eek: ;)

Waarom niet de html in 1x met de php? :)


Vr.Gr. Egel.

Omdat ik met javascript er ook nog een variable in wil gaan voegen. Hiermee kan ik dan bepalen welke plaatjes weggehaalt moeten worden en welke mogen blijven staan. Ik kan misschien wel een paar screenshots maken moet wat ik bedoel.
 
Ik heb even een plaatje gefotoshopt van wat ik zie als ik dit als laatste stukje code van de pagina het:

PHP:
echo "alert(strRese);\n"; 
echo "}\n"; 
  
echo "  //-->\n"; 
echo "</script>\n"; 
echo "\n <br>leeg: $leeg<br>"; 
        echo "<tr><td><form name='geheim'><div name='geheim' id='leeg'><img src=\"pics/$dir\"  width=\"60\"HEIGHT=\"40\"></div><td><div name='geheim' id='leeg'><a window.open('pics/$dir', '_maaktaal', 'HEIGHT=300,resizable=yes,scrollbars=yes,);return false;\" target=\"_maaktaal\" class=\"nav\" href='pics/$dir'>$dir</a></div><td><div name='geheim' id='leeg'><A href=# onclick=parent.document.invoer.$huidige_figuur.value='pics/$dir';>+ toevoegen</a>\n<br></div></form>"; 
}   }  
       
   } 
    
} 
closedir($dh2);  
echo "</table>"; 

?>

(als dit de pagina te veel oprekt zal ik alleen de link neerzetten)
jihztsrqwu.jpg


Mijn bedoeling is, dat je inplaats van drie die het plaatje ziet, dat elk de juiste code in het tekstveld van huidige figuur zet, je alleen degene ziet waarvan je huidige figuur hebt geselecteerd.

Dit wil ik oplossen door de zichtbaar en onzichtbaar div aan de i te kopplen. Maar dan moet ik eerst die regel in javascript krijgen. Maar als ik dat doe krijg ik dit:

hicaoujsnv.jpg


Alle hulp is welkom :).
 
Laatst bewerkt:
Vraagje, moet er niet geësceept worden bij:

PHP:
document.write('<tr><form name="geheim">');
document.write('<td><div id="ZICHTBAAR1"><img src="pics/DIR" width="60" height="40"></div></td>');
document.write('<td><div id="ZICHTBAAR2"><a onclick="window.open('pics/DIR','_maaktaal','height=300,resizable=yes,scrollbars=yes');return false" target="_maaktaal" class="nav" href="pics/DIR">DIR</a></div></td>');
document.write('<td><div id="ZICHTBAAR3"><a onclick="parent.document.invoer.HUIDIGE_FIGUUR.value='pics/DIR';return false" href="#">+ toevoegen</a></div></td>');
document.write('</form></tr>');
 
Vraagje, moet er niet geësceept worden ...
... ja :o. De binnenste ' moeten in de php 2 backslashes ervoor krijgen zodat ze in het javascript 1 overhouden.
PHP:
<?php
 $zichtbaar1 = "ZICHTBAAR1";
 $zichtbaar2 = "ZICHTBAAR2";
 $zichtbaar3 = "ZICHTBAAR3";
 $dir = "DIR";
 $huidige_figuur = "HUIDIGE_FIGUUR";

 echo "document.write('<tr><form name=\"geheim\">');\n";
 echo "document.write('<td><div id=\"$zichtbaar1\"><img src=\"pics/$dir\" width=\"60\" height=\"40\"></div></td>');\n";
 echo "document.write('<td><div id=\"$zichtbaar2\"><a onclick=\"window.open(\\'pics/$dir\\',\\'_maaktaal\\',\\'height=300,resizable=yes,scrollbars=yes\\');return false\" target=\"_maaktaal\" class=\"nav\" href=\"pics/$dir\">$dir</a></div></td>');\n";
 echo "document.write('<td><div id=\"$zichtbaar3\"><a onclick=\"parent.document.invoer.$huidige_figuur.value=\\'pics/$dir\\';return false\" href=\"#\">+ toevoegen</a></div></td>');\n";
 echo "document.write('</form></tr>');\n";
?>
en dat heeft als uitvoer:
PHP:
document.write('<tr><form name="geheim">');
document.write('<td><div id="ZICHTBAAR1"><img src="pics/DIR" width="60" height="40"></div></td>');
document.write('<td><div id="ZICHTBAAR2"><a onclick="window.open(\'pics/DIR\',\'_maaktaal\',\'height=300,resizable=yes,scrollbars=yes\');return false" target="_maaktaal" class="nav" href="pics/DIR">DIR</a></div></td>');
document.write('<td><div id="ZICHTBAAR3"><a onclick="parent.document.invoer.HUIDIGE_FIGUUR.value=\'pics/DIR\';return false" href="#">+ toevoegen</a></div></td>');
document.write('</form></tr>');
~/~

Maar volgens mij is het beter om het zo te doen:
PHP:
<script type="text/javascript">
<?php
 ........ // variabelen ophalen met php
 echo "var aantal = $aantal;\n"
?>
........ // de rest met javascript
</script>
de php alleen gebruiken voor het declareren van een aantal variabelen in het javascript. :)


Vr.Gr. Egel.
 
Bedankt :thumb: . Ik zal nu dan maar proberen het hele script te gaan debuggen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan