Avatar billede optur Novice
01. juni 2010 - 20:11 Der er 10 kommentarer og
2 løsninger

Undefined index

Jeg har en index side som ser sådan her ud:
<?php

// Denne funktion gør at teksten bliver pakke så meget sammen som muligt
function callback($buffer)
{
$holdit=$buffer;
$strip1 = array(" ","\n","\r");
$strip2 = array(" ","","");
$holdit=str_replace($strip1,$strip2, $holdit);
return $holdit;
}

header("Content-language: da");
header("Cache-Control: public");
header("Pragma: public");
header("Expires: Thu, 20 Aug 2065 23:59:59 GMT");
// gzipper sitet
ob_start("ob_gzhandler");
// køre funktionen callback
ob_start("callback");

//inkludere filen function.php
include('./include/function.php');
// XML
echo '<?xml version="1.0" encoding="utf-8"?>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
<head>
<link rel="stylesheet" href="include/style.css" type="text/css" media="all" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>B&oslash;rnehaven S&oslash;nderg&aring;rd</title>
</head>
<body>
<!-- boksen som rummer sitet -->
<div id="container">
      <a href="<?php $_SERVER['PHP_SELF'];?>?table=home"><img src="images/logo.png" id="logo" width="123" height="92" alt="Logo" /></a>
    <!-- øverste boks som indeholder hovedmenu -->
    <div id="headernavi">
        <!-- horisontal UL til hovedmenu punkterne -->
        <ul id="headernavilist">
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?table=about"<?php if($table==about) { ?> style="text-decoration:underline" <?php } ?>>Om s&oslash;nderg&aring;rd</a></li>
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?table=everyday"<?php if($table==everyday) { ?> style="text-decoration:underline" <?php } ?>>Hverdag</a></li>
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?table=staff"<?php if($table==staff) { ?> style="text-decoration:underline" <?php } ?>>Personale</a></li>
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?table=parents"<?php if($table==parents) { ?> style="text-decoration:underline" <?php } ?>>For&aelig;ldrebestyrelsen</a></li>
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?table=official"<?php if($table==official) { ?> style="text-decoration:underline" <?php } ?>>Officielt</a></li>
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?table=gallery"<?php if($table==gallery) { ?> style="text-decoration:underline" <?php } ?>>Billedgalleri</a></li>
            <li><a href="<?php $_SERVER['PHP_SELF'];?>?static=contact"<?php if($static==contact) { ?> style="text-decoration:underline" <?php } ?>>Kontakt</a></li>
        </ul>    </div>
    <!-- indeholder trækronen som et background -->
    <div id="treetop"></div>
    <!-- wrapper til sidemenu og content. Indeholder træstamme som baggrund der høre repeat i venstre side som udvidere sig med indholdet og menu -->
    <div id="filler">
    <?php content($static,$table,$id); ?>
    </div>
    <!-- indeholder kalender, login som går igen på alle sider -->
    <div id="sidebar">
    <?php include("calendarix/minical.php"); ?><br />
    <a href=".<?php $_SERVER['PHP_SELF'];?>?static=login">Personale Login</a>
    </div>
    <!-- footer med kontakt info til børnehaven -->
    <div id="footer"></div>
</div>

</body>
</html>


den inkluderet function.php har følgende i toppen:

include('db_con.php');


// henter variablen id
$id = $_GET['id'];
$table = $_GET['table'];
$static = $_GET['static'];


Koden virker fint på min xampplite, og på min www server ude i byen, men den eksamens server vi skal bruge giver mig følgende fejl:

Notice: Undefined index: id in D:\Users\EAMV201015\include\function.php  on line 6
Notice: Undefined index: table in D:\Users\EAMV201015\include\function.php on line 7
Notice: Undefined index: static in D:\Users\EAMV201015\include\function.php on line 8

hvor linje 6,7 og 8 er hver af de variabler jeg har sat... hvordan f..... i helvede kan det være l..tet ikke gider virke? Der er virkelig stress på.

jeg har prøvet at køre en isset på det, men det hjalp ikke...
Avatar billede majbom Novice
01. juni 2010 - 21:05 #1
det lader til at de tre variabler ikke eksisterer

prøv at brug isset()

www.php.net/isset
Avatar billede majbom Novice
01. juni 2010 - 21:06 #2
fejlen burde ikke komme hvis du sikrer dig med isset

hvordan gjorde du det?
Avatar billede dkfire Nybegynder
01. juni 2010 - 21:08 #3
Nu er det kun en Notice, IKKE en fejl.
Jeg er sikker på det skyldes forskellige opsætninger på de 3 servere. Denne type af informationsbeskeder kan man slå fra.

Men det bedste vil nu være hvis du lavede et tjek på om de 3 indexer er sat ellers sæt en default værdi.

$id = isset($_GET['id'])? $_GET['id']: 0 ;
Avatar billede optur Novice
01. juni 2010 - 22:27 #4
Nu har jeg sat dem sådan her:
$id = isset($_GET['id'])? $_GET['id']: 1;
$table = isset($_GET['table'])? $_GET['table']:'home' ;
$static = isset($_GET['static'])? $_GET['static']: 0 ;

men får stadig denne besked:
Notice: Use of undefined constant about - assumed 'about' in D:\Users\EAMV201015\index.php on line 42
>Om søndergård

og flere ligende til hver af mine ting i table, samt den kommer med en besked ved static
Avatar billede majbom Novice
01. juni 2010 - 22:38 #5
det er sikkert igen fordi der mangler " rundet om strengen about ;) ?
Avatar billede optur Novice
01. juni 2010 - 22:40 #6
her er strengen som der henvises til. det er href linket i min hovedmenu. Fortæl mig venligst hvad der er galt, jeg er rimelig noob, og en del fatsvag..

<a href="<?php $_SERVER['PHP_SELF'];?>?table=about"<?php if($table==about) { ?> style="text-decoration:underline" <?php } ?>>Om s&oslash;nderg&aring;rd</a>
Avatar billede dkfire Nybegynder
01. juni 2010 - 22:46 #7
Hvad er about i denne del: if($table==about) ?

PHP fortolker den som en konstant når der ikke er et $ foran eller " eller ' rundt om den.

Måske du mente: if($table=="about") ?
Tekst angives med " eller ' omkring teksten i php.
Avatar billede majbom Novice
01. juni 2010 - 22:46 #8
er det ikke dette problem vi er nået til her osse?

http://www.eksperten.dk/spm/911160#reply_7600162
Avatar billede optur Novice
01. juni 2010 - 22:48 #9
jo det var bare en posteringsfejl fra min side.. Beklager meget for dobbelt posteringen..

Og TUSIND mange tak for hjælpen..
Avatar billede majbom Novice
01. juni 2010 - 22:50 #10
jamen selv tak :)

og held og lykke med eksamen, vi må ikke håbe de spørger for meget ind til koden ;)
Avatar billede dkfire Nybegynder
01. juni 2010 - 22:53 #11
Og lige et svar fra mig :-)
Avatar billede majbom Novice
02. juni 2010 - 20:53 #12
tfp :)
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