08. september 2004 - 16:41
Der er
8 kommentarer og
1 løsning
Når man ikke må bruge globale variabler, hvad så?
Hej Alle
Jeg har et generelt spørgsmål....
Er der en der kan forklare mig, hvad man gør med variable når globale variable ikke må anvendes?
Endvidere kunne jeg godt tænke mig at vide hvad forskellen mellem løsningen og de globale variable er!
mvh
Henrik
08. september 2004 - 16:49
#1
<ole>
Hvis du mener $_POST, $_GET, $_SERVER, osv - så skifter du udbyder.
Den væsentligste forskel er, at du med de globale variabel-arrays har mulighed for at indføre en nogenlunde anstændig sikkerhed ... det er ikke muligt uden.
/mvh
</bole>
08. september 2004 - 17:32
#3
Dette er et eksempel på en side hvor den ikke kan trække data:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<link rel="stylesheet" type="text/css" href="style.css">
<TITLE>Kristensen:Kristensen - TESTSIDE</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
function mywindow(URL,Xsize,Ysize){
Attribs="Height="+Ysize+",Width="+Xsize+",toolbar=no,location=no,directries=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,screenX=200,screenY=0, top=0,left=50"
PopUp=window.open(URL,"PopUp",Attribs)}
function swapImage(imgtag,Image)
{document [imgtag].src = Image}
//-->
</SCRIPT>
</HEAD>
<BODY bgcolor="#FFFFFF">
<div align="center">
<Table width="800" height="500" cellspacing="0" cellpadding="2" border="0">
<Tr valign="top">
<Td background="top.jpg" width="800" height="70" valign="bottom">
</Td>
</Tr>
<Tr valign="bottom">
<Td background="indhold.jpg" width="800" height="368">
<div align="center">
<table width="778" height="350" background="storybag.jpg">
<tr valign="top" align="center">
<?
include("cms/config.php");
$db = mysql_connect($server, $user, $pass);
mysql_select_db($database, $db);
$foresp = mysql_query("SELECT place, billede FROM story_text LIMIT 0,5");
while ($data = mysql_fetch_row($foresp)){
echo "
<td>
<A HREF='java script:mywindow(\"storyskabelon.php?id=$data[0]\",630,390)' TARGET='_top'><img src='cms/storyimage/$data[1]' border='0'></A>
</td>
";
}
?>
</tr>
<tr>
<?
include("cms/config.php");
$db = mysql_connect($server, $user, $pass);
mysql_select_db($database, $db);
$foresp = mysql_query("SELECT billede FROM story_text LIMIT 5,1");
while ($data = mysql_fetch_row($foresp)){
echo "
<td colspan='2'><center><img src='cms/storyimage/$data[0]' border='0'></center></td>
";
}
?>
<td colspan="3"><center><p><br><br>
<?
include("cms/config.php");
$db = mysql_connect($server, $user, $pass);
mysql_select_db($database, $db);
$foresp = mysql_query("SELECT dansk, tysk, engelsk, litauisk FROM story_mini");
while ($data = mysql_fetch_row($foresp)){
if (!$navn1) {
echo "$data[0]";
}
if($navn1==eng){
echo "$data[2]";
}
if($navn1==lit){
echo "$data[3]";
}
if($navn1==tys){
echo "$data[1]";
}
if($navn1==dk){
echo "$data[0]";
}
}
?>
</p></center></td>
</tr>
</table>
</div>
</Td>
</Tr>
<Tr valign="middle">
<Td background="bund.jpg" width="800" height="62">
<div align="right"> <?
if (!$navn1) {
echo "<IMG src='knap1.gif'> <a href='index001.php' target='_top' class='bundlink'
>Tilbage</a>
";
}
if($navn1==eng){
echo "<IMG src='knap1.gif'> <a href='index001.php' target='_top' class='bundlink'
>Back</a>
";
}
if($navn1==lit){
echo "<IMG src='knap1.gif'> <a href='index001.php' class='bundlink' target='_top'
>????</a>
";
}
if($navn1==tys){
echo "<IMG src='knap1.gif'> <a href='index001.php' target='_top' class='bundlink'
>Zurück</a>
";
}
if($navn1==dk){
echo "<IMG src='knap1.gif'> <a href='index001.php' target='_top' class='bundlink'
>Tilbage</a>
";
}
?>
</div>
</Td>
</Tr>
</Table></div>
</BODY>
</HTML>
08. september 2004 - 17:46
#4
Ja, det er jo en fin kode ... men hvad med et svar på det, vi spørger om? :)
08. september 2004 - 17:49
#5
1. Hvor komemr $navn1 fra ?
2. Du bør nok tjekke $navn1 op mod en tekststreng.
3. En switch/case ville nok være på sin plads, da det er samme variable du tjekker på gennem hele koden.
08. september 2004 - 19:08
#8
nææ, behold dine points til en anden gang, det var jo bare en artikelhenvisning.