Avatar billede susanne_tc Nybegynder
11. oktober 2007 - 13:28 Der er 7 kommentarer

PHP 4 - PHP 5 medfører at session ikke virker

Efter at min udbyder har opgraderet PHP fra version 4 til 5, så virker min php fil ikke længere.

Samtidig har de flyttet Session_save_path ud i en mappe der hedder .tmp på mit eget webhotel.

1. Jeg kan ikke se nogle filer i .tmp. Hvordan gør jeg dem synlige?
2. Hvordan får jeg php filen til at virke igen?

mvh
Susanne
Avatar billede erikjacobsen Ekspert
11. oktober 2007 - 15:45 #1
Der kan være sket nogle ting omkring indstillinger. Prøv:

1) Lav en
      <?php session_start()
      ...osv...
  som det første på hver side.
2) Brug $_SESSION['navn'] og ikke noget med session_register()
Avatar billede styrk Nybegynder
12. oktober 2007 - 00:56 #2
Det kan tænkes du ikke kan se dine temp filer fordi de er skjulte.

Hvis de har et punktum først (.filnavn) så er det tit at ftp-klienter undlader at vise dem før du sætter "force show hidden files" eller lign til.
Avatar billede susanne_tc Nybegynder
16. oktober 2007 - 18:33 #3
Min php fil ser således ud

<?php
if (isset($_POST['submit']))
{
if (
!empty($_POST['subject']) &&      // tjek, at der er skrevet et subject
!empty($_POST['name']) &&     // tjek, at der er skrevet et navn
!empty($_POST['adress']) &&      // tjek, at der er skrevet et subject
!empty($_POST['phone']) &&      // tjek, at der er skrevet et telefonnr.
!empty($_POST['city']) &&      // tjek, at der er skrevet et postnr. og by
!empty($_POST['number']) &&     // tjek, at der er skrevet et bådnavn
!empty($_POST['place']) &&      // tjek, at der er skrevet placerng
!empty($_POST['number']) &&      // tjek, at der er skrevet havnenummer


// her følger sikringen mod spambotter

!strpos($_POST['name'], "vallensbaek-baadklub.dk") &&      // tjek, at dit domæne ikke er skrevet i feltet "navn"
!strpos($_POST['email'], "vallensbaek-baadklub.dk") &&     // tjek, at dit domæne ikke er skrevet i feltet "email"
!strpos($_POST['name'], "@") &&                 // tjek, at der ikke er et @ i "navn"
!eregi("\r",$_POST['name']) &&                  // tjek, at der ikke er "vogn-retur" i "navn"
!eregi("\n",$_POST['name']) &&                  // tjek, at der ikke er "linjeskift" i "navn"
!eregi("\r",$_POST['email']) &&                 // tjek, at der ikke er "vogn-retur" i "email"
!eregi("\n",$_POST['email']))                  // tjek, at der ikke er "linjeskift" i "email"

// er alt ok, fortsættes med afsendelse af mailen

  {
  $headers="From: ".$_POST['name']."<".$_POST['email'].">";

  $besked ="Navn          :    " . $_POST['name'] . "\n"
      ."Adresse      :    " . $_POST['adress'] . "\n"
      ."By            :    " . $_POST['city'] . "\n"
      ."Tlf. nr.      :    " . $_POST['phone'] . "\n"         
      ."Email        :    " . $_POST['email'] . "\n"
          ."Havnenr.      :    " . $_POST['number'] . "\n"
      ."Bro          :    " . $_POST['place'] . "\n"
      ."Bådnavn        :    " . $_POST['boat'] . "\n"
      ."Medlemsskab :    " . $_POST[''] . "\n"
      ."    Aktiv              : " . $_POST['active'] . "\n"
      ."    Aktiv m ægtefælle  : " . $_POST['active_spouse'] . "\n"
      ."    Pensionist          : " . $_POST['senior'] . "\n"
      ."    Pensionist m ægtef. : " . $_POST['senior_spouse'] . "\n"
      ."    Junior              : " . $_POST['junior'] . "\n"
      ."    Familie            : " . $_POST['family'] . "\n"
      ."    Aktiv fælles plads  : " . $_POST['active_joined'] . "\n"
          ."Besked        :    " . $_POST['message'] . "\n";

if (@mail("webmaster@vallensbaek-baadklub.dk",strip_tags($_POST['subject']),
  $besked, $headers))

if (@mail("xxx@mail.dk",strip_tags($_POST['subject']),
  $besked, $headers))



  {
  echo "<p>Tak for din henvendelse. Vi svarer så hurtigt som muligt.</p>";
  echo "<p>mvh Vallensbæk Båd Klub.</p>";

  }
  else
  {
  echo "<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!</p>";
  }
}
else
{
  echo "<p>Mailen kunne ikke sendes, alle felter med * skal udfyldes !</p>";
}
}

?>

Beskederne nederst i filen kommer fint frem, men der bliver ikke sendt mail til hhv webmaster og xxx.

Hvad går galt efter opgraderingen fra php4 til php5?

mvh
Susanne
Avatar billede susanne_tc Nybegynder
22. oktober 2007 - 15:58 #4
Er der virkelig ingen her, der kan se hvad der er galt med mit php skriv?
Avatar billede styrk Nybegynder
22. oktober 2007 - 21:08 #5
nej desværre, mail() er en underlig størrelse. Prøv med at send via smtp.
Avatar billede susanne_tc Nybegynder
23. oktober 2007 - 10:10 #6
Hej Styrk

Hvordan sender jeg via SMTP? Hvad skal rettes?

mvh
Susanne
Avatar billede styrk Nybegynder
23. oktober 2007 - 18:14 #7
du kan benytte dig af klassen phpmailer (tror jeg den hedder).

søg på google :-)
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