Avatar billede friborg100 Nybegynder
15. januar 2009 - 10:18 Der er 23 kommentarer og
1 løsning

Den redirect'er ikke, hvorfor??

Hej

Jeg har et upload program, som henter et billede, og denne behandler jeg og gemmer i DB. Herefter skal jeg generere en thumbnail som sker i en anden php fil. Jeg forsøger at redirecte den, men når afvikleren kommer til min kode stopper den og laver bare en hvid skærmbillede (skyldes sikkert min die()) men den bliver stående i den første php fil, og sendes ikke videre.

Kan i sige mig hvorfor, koden ses herunder:
header("Location: http://www.hejbøll-friborg.dk/Admin/createThumbs.php?filepath=".$uploaddir."&file=".$onlyFile."&path=".$thump."");
    die();
Avatar billede olebole Juniormester
15. januar 2009 - 10:49 #1
<ole>

Prøv i stedet at skrive denne linje allerøverst:
    error_reporting(E_ALL);

- og udskift så header'en med:
    print "http://www.hejbøll-friborg.dk/Admin/createThumbs.php?filepath=".$uploaddir."&file=".$onlyFile."&path=".$thump."";
    exit();

- hvad sker der så - og passer URI'en?

/mvh
</bole>
Avatar billede friborg100 Nybegynder
15. januar 2009 - 11:11 #2
Synes den går i fejl når jeg forsøger nu, det er lige som om den ikke kan nå det, og hænger meget.

Den skrev den slet ikke kunne finde den første php fil når jeg satte dit koden ind, og derefter opføre den sig som beskrevet. Også selv om jeg retter den tilbage.
Avatar billede dkfire Nybegynder
15. januar 2009 - 11:28 #3
Du skal nok heller ikke lave en absolut sti til din næste fil, prøv i stedet at skrive den relative sti. Noget ala:
header("Location: /Admin/createThumbs.php?filepath=".$uploaddir."&file=".$onlyFile."&path=".$thump."");

Dernæst, skriv alle de fejlbeskeder som du får herind.
Få php til at udskrive dine variabler. 
Prøv at skrive hele din kode herind.
Avatar billede friborg100 Nybegynder
15. januar 2009 - 11:31 #4
$numId = (int)$album;
   
$uploaddir = '/usr/home/web/web279211/Admin/image/big/'.$album.'/';
$uploadfile = $uploaddir.basename( $_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    mysql_query("INSERT INTO Picturs (AlbumId,Text,Title) VALUES('$numId','$text','$title') ") or die(mysql_error());
       
    $dui = mysql_query("SELECT MAX(Id) AS Id FROM Picturs");
    $dau = mysql_fetch_assoc($dui);
   
    rename($uploadfile, '/usr/home/web/web279211/Admin/image/big/'.$album.'/'.$dau['Id'].'.jpg');
   
    $numPicId = (int)$dau['Id'];
    $picFile = $album.'/'.$dau['Id'].'.jpg';
    $onlyFile = $dau['Id'].'.jpg';
   
    mysql_query("UPDATE Picturs SET Path='$picFile' WHERE Id='$numPicId'") or die(mysql_error());
   
    $thump = '/usr/home/web/web279211/Admin/image/thumbs/'.$album.'/';
   
    header("Location: http://www.hejbøll-friborg.dk/Admin/createThumbs.php?filepath=".$uploaddir."&file=".$onlyFile."&path=".$thump."");
    die();
}
Avatar billede dkfire Nybegynder
15. januar 2009 - 22:22 #5
Er det hele din kode på den side ???

Prøv at lave lidt udskrift under vejs.
Avatar billede olebole Juniormester
15. januar 2009 - 22:33 #6
- og du kan ikke udvikle uden fejlmeldinger, så hav for en sikkerheds skyld dette som øverste linje:
    error_reporting(E_ALL);

Jeg tvivler på, fejlen ligger, hvor du tror  =)
Avatar billede friborg100 Nybegynder
16. januar 2009 - 08:34 #7
Alt indtil da går godt, hvilket jeg kan se i basen samt fil der bliver oprettet.

Men vil prøve med error_reporting(E_All).

Kan det være noget med rettigheder der gør det. Jeg opretter med 775, men de ender med 755.
Avatar billede friborg100 Nybegynder
16. januar 2009 - 08:35 #8
Og det er alt koden, resten er HTML
Avatar billede friborg100 Nybegynder
16. januar 2009 - 08:35 #9
Men det kommer først efter
Avatar billede dkfire Nybegynder
16. januar 2009 - 09:05 #10
Så vil jeg endnu engang tillade mig at skrive:
Du skal nok heller ikke lave en absolut sti til din næste fil, prøv i stedet at skrive den relative sti. Noget ala:
header("Location: /Admin/createThumbs.php?filepath=".$uploaddir."&file=".$onlyFile."&path=".$thump."");
Avatar billede friborg100 Nybegynder
16. januar 2009 - 10:02 #11
Det vil jeg prøve, troede bare at man skulle oprette den med den totale sti. Vender tilbage når det er testet.
Avatar billede friborg100 Nybegynder
16. januar 2009 - 23:10 #12
Har nu prøvet det du skriver, men i stedet får jeg følgende fejl Internet Explorer cannot display the webpage, og url'en står på den samme php fil som jeg kalder fra. Men alt koden indtil min redirect virker, der oprettes DB og filen bliver lavet... Hvad gør jeg galt. Selv om jeg retter det tilbage til udgangspunkt får jeg fejlen.
Avatar billede dkfire Nybegynder
19. januar 2009 - 23:47 #13
Jeg kunne godt tænke mig at se HELE side med ALT kode ( dog minus passwords )
Avatar billede friborg100 Nybegynder
20. januar 2009 - 09:07 #14
<?php
$id      = $_GET['id'];
$albumId = $_GET['albumId'];

if($id != ''){
  $dbhost = 'db.hejbll-friborg.dk';
  $dbuser = '???????';
  $dbpass = '???????';

  $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to mysql');

  $dbname = '??????';
  mysql_select_db($dbname);
  mysql_query("SET NAMES 'utf8';");

  $numId      = (int)$id;
  $numAlbumId = (int)$albumId;
  mysql_query("DELETE FROM Picturs WHERE Id='$numId' AND AlbumId='$numAlbumId'") or die(mysql_error());
     
  header("Location: http://www.hejbøll-friborg.dk/Admin/Admin.php");
  die();
}
else{
echo $id;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="da">
  <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

      <meta http-equiv="Content-Language" content="da">

        <meta name="description" content="Christina Hejbøll Sørensen, Leon Friborg Jeppesen, Gry Hejbøll Friborg Jeppesen og Balder's hjemmeside. Her får du billeder og information om vores lille familie. Vi bor i Kibæk.">

          <meta name="keywords" content="Christina, Hejbøll, Sørensen, Leon, Friborg, Jeppesen, Gry, Balder, Kibæk”>"

            <meta name="author" content="Hejbøll-Friborg" />


            <link rel="stylesheet" href="../stylesheets/screen.css" type="text/css"  media="screen, projection" title="Hejbøll-Friborg (screen)" />

            <title>Hejbøll-Friborg</title>


            <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />

          </head>

  <body>
    <div class="page">
      <h3 class="header">
        <a href="./index.php" title="Hjem">
          Hejbøll-Friborg

          <span>
          </span>
        </a>
      </h3>
      <ul class="topmenu">
        <li>
          <a href="Admin.php" class="currentpage">Administration</a>
        </li>
        <li>
          <a href="../contact.php">Kontakt</a>
        </li>
        <li>
          <a href="../GuestBook.php">Gæstebog</a>
        </li>
        <li>
          <a href="../wishList.php">Ønskeseddel</a>
        </li>
        <li>
          <a href="../gallery.php">Galleri</a>
        </li>
        <li>
          <a href="../index.php">Forside</a>
        </li>
      </ul>

      <div class="main">
        <div class="greybox2">
          <h1>Slet billede</h1>
          <p>
            <br/>
           
            <table class="EditButton">
              <tr>
                <td align="right">
                  <input type="submit" value="Tilbage" name="back" onClick="java script:history.back();">
                  </td>
              </tr>
            </table>

            </p>

        </div>
      </div>
      <!-- /main-->

      <div class="footer1">
        © 2008 Christina Hejbøll Sørensen & Leon Friborg Jeppesen
      </div>

    </div>
    <!-- /page-->
    <center>
      <div class="footer2">
        &nbsp;
      </div>

    </body>
</html>
<?php
}
?>
Avatar billede dkfire Nybegynder
21. januar 2009 - 23:36 #15
Så har den kode du viser ikke noget med spørgsmålet, men prøv lige:
<?php
error_reporting(E_ALL);
$id      = $_GET['id'];
$albumId = $_GET['albumId'];

if(trim($id) != '' && !empty(trim($albumId))){
  $dbhost = 'db.hejbll-friborg.dk';
  $dbuser = '???????';
  $dbpass = '???????';

  $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to mysql');

  $dbname = '??????';
  mysql_select_db($dbname);
  mysql_query("SET NAMES 'utf8';");

  $numId      = (int)$id;
  $numAlbumId = (int)$albumId;
  mysql_query("DELETE FROM Picturs WHERE Id='$numId' AND AlbumId='$numAlbumId'") or die(mysql_error());
   
  header("Location: http://www.hejbøll-friborg.dk/Admin/Admin.php");
  exit();
}
else{
echo $id;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="da">
  <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

      <meta http-equiv="Content-Language" content="da">

        <meta name="description" content="Christina Hejbøll Sørensen, Leon Friborg Jeppesen, Gry Hejbøll Friborg Jeppesen og Balder's hjemmeside. Her får du billeder og information om vores lille familie. Vi bor i Kibæk.">

          <meta name="keywords" content="Christina, Hejbøll, Sørensen, Leon, Friborg, Jeppesen, Gry, Balder, Kibæk”>"

            <meta name="author" content="Hejbøll-Friborg" />


            <link rel="stylesheet" href="../stylesheets/screen.css" type="text/css"  media="screen, projection" title="Hejbøll-Friborg (screen)" />

            <title>Hejbøll-Friborg</title>


            <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />

          </head>

  <body>
    <div class="page">
      <h3 class="header">
        <a href="./index.php" title="Hjem">
          Hejbøll-Friborg

          <span>
          </span>
        </a>
      </h3>
      <ul class="topmenu">
        <li>
          <a href="Admin.php" class="currentpage">Administration</a>
        </li>
        <li>
          <a href="../contact.php">Kontakt</a>
        </li>
        <li>
          <a href="../GuestBook.php">Gæstebog</a>
        </li>
        <li>
          <a href="../wishList.php">Ønskeseddel</a>
        </li>
        <li>
          <a href="../gallery.php">Galleri</a>
        </li>
        <li>
          <a href="../index.php">Forside</a>
        </li>
      </ul>

      <div class="main">
        <div class="greybox2">
          <h1>Slet billede</h1>
          <p>
            <br/>
         
            <table class="EditButton">
              <tr>
                <td align="right">
                  <input type="submit" value="Tilbage" name="back" onClick="java script:history.back();">
                  </td>
              </tr>
            </table>

            </p>

        </div>
      </div>
      <!-- /main-->

      <div class="footer1">
        © 2008 Christina Hejbøll Sørensen & Leon Friborg Jeppesen
      </div>

    </div>
    <!-- /page-->
    <center>
      <div class="footer2">
        &nbsp;
      </div>

    </body>
</html>
<?php
}
?>
Avatar billede friborg100 Nybegynder
22. januar 2009 - 13:11 #16
Hvis du tænker på linket ikke er det samme mere, så er det fordi jeg lige skulle prøve af om det var overførsel af variabler der fejlede, men der skal sendes variabler med over som parametre
Avatar billede dkfire Nybegynder
22. januar 2009 - 14:52 #17
Ok, men hvad siger den kode jeg har send ??
Avatar billede friborg100 Nybegynder
23. januar 2009 - 07:43 #18
Du må undskylde... Jeg sover sgu, her er den rigtige fil:
(Jeg prøver lige at flette dit kode fra den forgående ind, og ser om det ikke virker)

<?php
  $album = $_POST['album'];
  $text = $_POST['text'];
  $title = $_POST['title'];
   
  $dbhost = 'db.hejbll-friborg.dk';
  $dbuser = '???????????';
  $dbpass = '???????';

  $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to mysql');

  $dbname = '???????';
  mysql_select_db($dbname);
  mysql_query("SET NAMES 'utf8';");

  $numId = (int)$album;
   
$uploaddir = '/usr/home/web/web279211/Admin/image/big/'.$album.'/';
$uploadfile = $uploaddir.basename( $_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    mysql_query("INSERT INTO Picturs (AlbumId,Text,Title) VALUES('$numId','$text','$title') ") or die(mysql_error());
       
    $dui = mysql_query("SELECT MAX(Id) AS Id FROM Picturs");
    $dau = mysql_fetch_assoc($dui);
   
    rename($uploadfile, '/usr/home/web/web279211/Admin/image/big/'.$album.'/'.$dau['Id'].'.jpg');
   
    $numPicId = (int)$dau['Id'];
    $picFile = $album.'/'.$dau['Id'].'.jpg';
    $onlyFile = $dau['Id'].'.jpg';
   
    mysql_query("UPDATE Picturs SET Path='$picFile' WHERE Id='$numPicId'") or die(mysql_error());
   
    $thump = '/usr/home/web/web279211/Admin/image/thumbs/'.$album.'/';
   
    header("Location: http://www.hejbøll-friborg.dk/Admin/createThumbs.php?filepath={$uploaddir}&file={$onlyFile}&path={$thump}");
    die();
} else {
    $message = "Muligvis fil upload angreb eller ingen fil er specificeret!\n";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="da">
  <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

      <meta http-equiv="Content-Language" content="da">

        <meta name="description" content="Christina Hejbøll Sørensen, Leon Friborg Jeppesen, Gry Hejbøll Friborg Jeppesen og Balder's hjemmeside. Her får du billeder og information om vores lille familie. Vi bor i Kibæk.">

          <meta name="keywords" content="Christina, Hejbøll, Sørensen, Leon, Friborg, Jeppesen, Gry, Balder, Kibæk”>"

            <meta name="author" content="Hejbøll-Friborg" />
           
            <link rel="stylesheet" href="../stylesheets/screen.css" type="text/css"  media="screen, projection" title="Hejbøll-Friborg (screen)" />

            <title>Hejbøll-Friborg</title>


            <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />

          </head>

  <body>
    <div class="page">
      <h3 class="header">
        <a href="./index.php" title="Hjem">
          Hejbøll-Friborg

          <span>
          </span>
        </a>
      </h3>
      <ul class="topmenu">
        <li>
          <a href="Admin.php" class="currentpage">Administration</a>
        </li>
        <li>
          <a href="../contact.php">Kontakt</a>
        </li>
        <li>
          <a href="../GuestBook.php">Gæstebog</a>
        </li>
        <li>
          <a href="../wishList.php">Ønskeseddel</a>
        </li>
        <li>
          <a href="../gallery.php">Galleri</a>
        </li>
        <li>
          <a href="../index.php">Forside</a>
        </li>
      </ul>

      <div class="main">
        <div class="greybox2">
          <h1>Indsætter billede</h1>
          <p>
            <br/>
            <pre>
            <?php echo $message; ?>
            </pre>
            <br/>
           
            <table class="EditButton">
              <tr>
                <td align="right">
                  <input type="submit" value="Tilbage" name="back" onClick="java script:history.back();">
                  </td>
              </tr>
            </table>

            </p>

        </div>
      </div>
      <!-- /main-->

      <div class="footer1">
        © 2008 Christina Hejbøll Sørensen & Leon Friborg Jeppesen
      </div>

    </div>
    <!-- /page-->
    <center>
      <div class="footer2">
        &nbsp;
      </div>

    </body>
</html>
Avatar billede friborg100 Nybegynder
23. januar 2009 - 07:58 #19
Med dine rettelser skriver den nu "Internet Explorer cannot display the webpage" men står stadig på siden, og billedet bliver indsat og oprettet i db.

Most likely causes:
You are not connected to the Internet.
The website is encountering problems.
There might be a typing error in the address.

Hvis det var min fil der var væk eller fejl i filen, burde linket så ikke blive sat til filen jeg forsøger at redirecte til?
Jeg har også dobbelt tjekket at filen er der, kopieret filnavnet og sat ind i koden.
Avatar billede friborg100 Nybegynder
23. januar 2009 - 08:05 #20
Det jeg mener med den stadig står på siden er, at url'en viser navnet på filen som du har fået koden på.
Avatar billede TommyB Nybegynder
29. januar 2009 - 13:08 #21
Hov hov !! lige en kommentar :
Domæner indeholder per definition IKKE og ALDRIG æøå... at du kan indtaste det i en browser er udelukkende fordi at browser'en tager dit indput i adressefeltet og omskriver.

Uden at lave indlægget syntes jeg lige du skal rette din header("Location...") til at pege på xn--hejbll-friborg-tqb.dk istedet.
Avatar billede friborg100 Nybegynder
29. januar 2009 - 18:47 #22
Du er min helt :O) ... Smid et svar og pointene er dine.

Mange tak!!!
Avatar billede friborg100 Nybegynder
29. januar 2009 - 18:49 #23
Også et stort tak til dkfire og olebole. Stor indsats drenge :O)
Avatar billede TommyB Nybegynder
29. januar 2009 - 20:28 #24
Jae man overser nu hurtigt de mest simple fodfejl..

:)
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