Avatar billede overgreat Forsker
08. september 2004 - 19:10 Der er 19 kommentarer og
1 løsning

Global værdi til superglobal

Hvordan retter jeg denne globale værdi (navn1) til at blive superglobal.

Værdien kommer fra en cookie.

Det er nødvendigt da globals er sat til off på serveren!

<?php
if (!$navn1) {
echo "<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"produkter.php\" target=\"_top\">Produkter</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"story.php\" target=\"_top\">Produkthistorie</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"profil.php\" target=\"_top\">Profil</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"care.php\" target=\"_top\">Træpleje</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"argument.php\" target=\"_top\">Argumenter</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"formular.php\" target=\"_top\">Kontakt</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
}
if($navn1==eng){
echo "<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"produkter.php\" target=\"_top\">Products</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"story.php\" target=\"_top\">Story of products</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"profil.php\" target=\"_top\">Profile</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"care.php\" target=\"_top\">Care</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"argument.php\" target=\"_top\">Arguments</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"formular.php\" target=\"_top\">Contact us</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
}
if($navn1==lit){
echo "<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"produkter.php\" target=\"_top\">Products</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"story.php\" target=\"_top\">Produkthistorie</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"profil.php\" target=\"_top\">Profile</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"care.php\" target=\"_top\">Care</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"argument.php\" target=\"_top\">Argument</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"formular.php\" target=\"_top\">Contact</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
}
if($navn1==tys){
echo "<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"produkter.php\" target=\"_top\">Produkte</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"story.php\" target=\"_top\">Produkt historie</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"profil.php\" target=\"_top\">Profil</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"care.php\" target=\"_top\">Pflege</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"argument.php\" target=\"_top\">Argumente</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"formular.php\" target=\"_top\">Kontakt</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
}
if($navn1==dk){
echo "<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"produkter.php\" target=\"_top\">Produkter</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"story.php\" target=\"_top\">Produkthistorie</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"profil.php\" target=\"_top\">Profil</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"care.php\" target=\"_top\">Træpleje</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"argument.php\" target=\"_top\">Argumenter</A>&nbsp;&nbsp;<IMG src=\"knap.gif\">&nbsp;&nbsp;<A href=\"formular.php\" target=\"_top\">Kontakt</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
}
?>
Avatar billede sukos Juniormester
08. september 2004 - 19:13 #1
$navn1 = $_POST["navn1"]; ????????????????????
Avatar billede detox Nybegynder
08. september 2004 - 19:13 #2
<?php
$navn1 = $_COOKIE['navn1']; // ny linje
if (!$navn1) {
Avatar billede sukos Juniormester
08. september 2004 - 19:15 #3
Og det er vist to spm af samme slags?
http://www.eksperten.dk/spm/537609
Avatar billede hmortensen Nybegynder
08. september 2004 - 19:17 #4
Og så lav dine if'er om til switch/case. Det er langt hurtigere end det du laver nu

sukos, det er da lidt bedre formuleret denne gang ;)
Avatar billede overgreat Forsker
08. september 2004 - 19:32 #5
Jeg lavede detox ide men den vil stadig ikke du.
Avatar billede hmortensen Nybegynder
08. september 2004 - 19:38 #6
Hvor/hvordan sætter du $navn1 ?
Avatar billede detox Nybegynder
08. september 2004 - 19:40 #7
Det kræver jo at cookien er sat.
Avatar billede detox Nybegynder
08. september 2004 - 19:44 #8
Du skal osse have plinger omkring din tekst i de forskellige if sætninger:

if($navn1=='eng'){
Avatar billede detox Nybegynder
08. september 2004 - 19:49 #9
Kan du uddybe lidt mere, hvad der sker når den ikke dur?
Avatar billede overgreat Forsker
08. september 2004 - 20:31 #10
Jeg har plinget der hvor der manglede.

Det gav stadig samme udfald. Der sker det at den bare vælger "if (!$navn1)"-udfaldet.

Jeg har vedhæftet min cookie nederst.

index siden har link for hvert flag. Den sender videre til c

----------------------------

<?

setcookie("navn1", $vaerdi, time()+50000);

header("location:index001.php");

?>
Avatar billede overgreat Forsker
08. september 2004 - 20:34 #11
ahhhhh jeg fandt løsningen...... $vaerdi er selvfølgelig også en global variabel!
Avatar billede overgreat Forsker
08. september 2004 - 20:34 #12
Tak for hjælpen detox sender du et svar?
Avatar billede detox Nybegynder
08. september 2004 - 20:39 #13
Velbekommen. Lav evt. dine if blokke om til:

if (!$navn1) {
  //....
} elseif ($navn1=='eng') {
  //....
} elseif ($navn1=='lit') {
  //....
} elseif ($navn1=='tys') {
  //osv...
Avatar billede overgreat Forsker
08. september 2004 - 20:44 #14
Et enkelt lille spørgsmål, hvis der er overskud til det.

I tilfælde af udtræk fra mysql, hvordan laver jeg så variablen? Jeg har gjort et forsøg i den engelske, men det har ikke fungeret!

-----------

<?
     
    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 "$_request['engelsk']";



}
if($navn1==lit){

echo "$data[3]";



}
if($navn1==tys){

echo "$data[1]";



}
if($navn1==dk){

echo "$data[0]";



}



} 
?>
Avatar billede hmortensen Nybegynder
08. september 2004 - 20:46 #15
echo $data["engelsk"];
Avatar billede overgreat Forsker
08. september 2004 - 20:56 #16
dette virker ikke... så bliver siden helt hvid... før havde jeg baggrunden med.

Er det ikke et eksempel på hvor jeg har en global værdi hvor jeg skal lave den til en superglobal?
Avatar billede detox Nybegynder
08. september 2004 - 20:57 #17
Prøv:

<?
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_assoc($foresp)){
    if ($navn1=='eng') {
        echo $data['engelsk'];
    } elseif ($navn1=='lit') {
        echo $data['litauisk'];
    } elseif ($navn1=='tys') {
        echo $data['tysk'];
    } else {
        echo $data['dansk'];
    }
} 
?>
Avatar billede detox Nybegynder
08. september 2004 - 20:58 #18
Fx:

$navn1 = $_COOKIE['navn1'];
Avatar billede detox Nybegynder
08. september 2004 - 20:58 #19
<?
include("cms/config.php");
$db = mysql_connect($server, $user, $pass);
mysql_select_db($database, $db);
$navn1 = $_COOKIE['navn1'];
$foresp = mysql_query("SELECT dansk, tysk, engelsk, litauisk FROM story_mini");
while ($data = mysql_fetch_assoc($foresp)){
    if ($navn1=='eng') {
        echo $data['engelsk'];
    } elseif ($navn1=='lit') {
        echo $data['litauisk'];
    } elseif ($navn1=='tys') {
        echo $data['tysk'];
    } else {
        echo $data['dansk'];
    }
} 
?>
Avatar billede overgreat Forsker
08. september 2004 - 21:01 #20
Den giver stadig bare baggrunden ikke indholdet. Det må være i en anden boldgade problemet ligger.

Men mange tak for hjælpen hidtil!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester