Avatar billede zips Juniormester
09. juli 2008 - 23:49 Der er 9 kommentarer og
1 løsning

Undefined variable

Hej Eksperter

Jeg har lavet et lille script som bruges til at vise sidst opdateret, det virker ok synes jeg ;-) men har haft det ude til test og der er lige noget jeg ikke helt har styr på, her er de fejl som de får.

Notice: Undefined variable: date_da in D:\xampp\htdocs\gallery_mod\plugins\last_update\index.php on line 23

Notice: Undefined variable: month in D:\xampp\htdocs\gallery_mod\plugins\last_update\index.php on line 24

Notice: Undefined variable: year in D:\xampp\htdocs\gallery_mod\plugins\last_update\index.php on line 24

Notice: Undefined variable: maaned in D:\xampp\htdocs\gallery_mod\plugins\last_update\index.php on line 26

og her er den del af scriptet hvor jeg ikke har defineret dem

function last_update() {
    global $plugin_cf,$plugin_tx, $pth;
    $t = $plugin_tx['last_update']['date_text'];
    if (strtolower (($plugin_cf['last_update']['Show_text_last_update'])=='true' && strtolower ($plugin_cf['last_update']['Text_on_top_of_date'])=='true'))$t .= tag('br');
    elseif (strtolower (($plugin_cf['last_update']['Show_text_last_update'])=='true' && strtolower ($plugin_cf['last_update']['Text_on_top_of_date'])=='false'))$t .= ' ';
    else $t = '';
    $date_da .= '<span class="last_update_text">'.$t.'</span>';
    $textmonth = date("F",mktime(1,1,1,$month,1,$year));
    $maanede_da = explode(",", $plugin_tx['last_update']['monthname_array']);
    $maaned .= date("n", filemtime($pth['file']['content']));

Hvordan får disse fejl væk?
Det er vist noget med at skulle initialise disse variabler, men hvordan?
Avatar billede erikjacobsen Ekspert
09. juli 2008 - 23:53 #1
Hvordan afhænger af hvad du vil. Linien

  $date_da .= '<span class="last_update_text">'.$t.'</span>';

tilføjer tekst til variablen $date_da, men som vi se koden, er variablen ikke brugt før. Måske - men det er kun et gæt - mener du bare at den skal have værdien, og ikke tilføje værdien:

  $date_da = '<span class="last_update_text">'.$t.'</span>';
Avatar billede zips Juniormester
10. juli 2008 - 00:03 #2
Hej erikjacobsen

det er rigtigt at den sætter værdien, i dette tilfælde sætter den teksten Sidst opdateret som hentes fra en sprogfil og den er ikke brugt før, punktumet gør at den vises, hvis jeg sletter det skriver den ikke nogen tekst ud
Avatar billede zips Juniormester
10. juli 2008 - 00:06 #3
Ham som har testet det skriver dette, You can fix that by initialise these variables on top of your function (after global).

Men da jeg er meget ny i php er jeg ikke helt klar over hvad der menes
Avatar billede erikjacobsen Ekspert
10. juli 2008 - 00:17 #4
I den kode du har vist, gør det ingen forskel i udskrifterne at slette punktummet i den linie jeg omtaler. Det vil netop initialisere den variabel. Spørgsmålet er kun om det så er hvad du vil have der sker, eller om vi ser den rigtige kode.
Avatar billede zips Juniormester
10. juli 2008 - 00:17 #5
For lige at i ved hvilke linier det er har jeg sat nr på her

Linie 23 --> $date_da .= '<span class="last_update_text">'.$t.'</span>';
Linie 24 --> $textmonth = date("F",mktime(1,1,1,$month,1,$year));
Linie 25 --> $maanede_da = explode(",", $plugin_tx['last_update']['monthname_array']);
Linie 26 --> $maaned .= date("n", filemtime($pth['file']['content']));
Avatar billede zips Juniormester
10. juli 2008 - 00:23 #6
Hej erikjacobsen

Du har helt ret, den viser stadig teksten selvom jeg sletter det punktum, men det fjerner vel ikke de andre fejl, eller gør det?
Avatar billede erikjacobsen Ekspert
10. juli 2008 - 00:25 #7
Det fjerner kun den fejl, der har med $date_da at gøre.

Linie 24 er jo en del mere mystisk, når nu $month og $year ikke har noget værdi. Hvad formål har beregningen så?
Avatar billede zips Juniormester
10. juli 2008 - 00:36 #8
Hej erikjacobsen

Ja det skal væk da det var noget jeg testede og så har jeg slettet det punktum efter maaned, så nu skulle det være iorden.

Det kan ses her http://cmsimple.prebendahl.dk/
Avatar billede erikjacobsen Ekspert
10. juli 2008 - 00:38 #9
;) Hvis alt er i orden så skal du have lukket spørgsmålet. Jeg samler slet ikke på point, så svar selv, og accepter eget svar.
Avatar billede zips Juniormester
10. juli 2008 - 00:42 #10
1000 tak for din hjælp, hvis du ikke vil have point skal du have en stor smile ;-)))
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