Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodawanie rekordów z obrazkiem i problem z IE
Forum PHP.pl > Forum > Przedszkole
rosirosi
Witam... znowu panowie mam problem z przegladarka IE, na pozostalych przegladarkach jakie posiadam (Opera, Mozilla, Chrome) dziala pieknie a z IE znowu mam problemy....

Walidacja w polach text nawet w IE dziala ladnie wiec mysle ze blad lezy gdzies miedzy 40 a 130 wierszem skryptu gdzie operacje dotycza obrazka, czuje ze jest to jakie trywialny blad ze IE sie nie dodaje rekordu.... Zakancza procedure dodawania ale rekordu nie doda....

moze jest to troche nie za ladnie napisane narazie ale najpierw chce zeby to zaczelo dzialas wtedy to poukladam... z gory dzieki za jakiekolwiek uwagi co to moze byc....

  1. <?php
  2.  
  3. require('config.php');
  4. ?>
  5. <html>
  6. <head>
  7. <center>
  8. </head>
  9. <body bgcolor="#6BA3EF">
  10. <table border height=400 VALIGN=top  CELLSPACING=5 CELLPADDING=15 width=700 bordercolor=black><tr><td VALIGN=top >
  11. <?php
  12. if (isset($_POST['submit']) & $_POST['submit'] == "Dodaj") {
  13.  if ($_POST['naz'] != "" &&
  14.      $_POST['opis'] != "" &&
  15.      $_POST['price'] != "" &&
  16.      $_POST['inventory'] != "") {
  17.  
  18.    $query = "SELECT products_name FROM products " .
  19.             "WHERE products_name = '" . $_POST['naz'] . "';";
  20.    $result = mysql_query($query)
  21.      or die(mysql_error());
  22.  
  23.    if (mysql_num_rows($result) != 0) {
  24. ?>
  25. <p>
  26.  <font color="#FF0000">Produkt <b>"<big><?php echo $_POST['naz']; ?>"<small></b> juz jest w naszym magazynie. Proszę dodać
  27.  inny produkt!</b></font>
  28.  <form action="asd.php" method="post" enctype="multipart/form-data">
  29.      <?
  30.  require('dod_wsad.php');
  31.      ?>
  32.  </form>
  33. </p>
  34. <?php
  35.    } else {
  36.  
  37.  
  38. ?>
  39. <p>
  40. </center>
  41. <font color=green>
  42. Dziękujemy!!!<br> produkt o nazwie  <font color=black><big><big><?php echo $_POST['naz'];?> <small><small></font>został dodany do bazy danych <br>
  43. <?php
  44.             header("Refresh: 10; URL=asd.php");
  45.      echo "Zostaniesz przeniesiony do oryginalnej storny!<br>";
  46.      echo "(Jeli przeglądarka nie obsługuje przekierowań, " .
  47.           "<a href=\"asd.php\">kliknij tutaj</a>)";
  48.              $opis = $_POST['opis'];
  49. $naz = $_POST['naz'];
  50. $price = $_POST['price'];
  51. $inventory = $_POST['inventory'];
  52. $image_tempname = $_FILES['image_filename']['name'];
  53.  
  54.  
  55. // umieszczenie obrazu i sprawdzenie jego formatu
  56. $ImageDir ="images/";
  57.  
  58. //**WSTAW TEN WIERSZ
  59. $ImageThumb = $ImageDir . "thumbs/";
  60. //**KONIEC WSTAWIENIA
  61.  
  62. $ImageName = $ImageDir . $image_tempname;
  63.  
  64. if (move_uploaded_file($_FILES['image_filename']['tmp_name'],
  65.                      $ImageName)) {
  66.  
  67.  // pobranie informacji na temat umieszczonego obrazu
  68.  list($width, $height, $type, $attr) = getimagesize($ImageName);
  69.  
  70.  if ($type3) {
  71.    echo "Przykro nam, ale przesłany obraz nie jest w formacie GIF, JPG lub " .
  72.         "PNG.";
  73.    echo "Kliknij przycisk 'Wstecz' w przeglądarce i spróbuj ponownie.";
  74.  } else {
  75.  
  76.    // obraz jest w poprawnym formacie, można kontynuować
  77.  
  78.  // wstawienie informacji w tabeli images
  79.  
  80.  $insert = "INSERT INTO products
  81.            (products_name, products_proddesc, products_price, products_inventory)
  82.            VALUES
  83.            ('$naz', '$opis', '$price', '$inventory')";
  84.  $insertresults = mysql_query($insert);
  85.  
  86.  $lastpicid = mysql_insert_id();
  87.  
  88.  $newfilename =  $ImageDir . $lastpicid . ".jpg";
  89.  
  90.  if ($type == 2) {
  91.    rename($ImageName, $newfilename);
  92.  } else {
  93.    if ($type == 1) {
  94.      $image_old = imagecreatefromgif($ImageName);
  95.    } elseif ($type == 3) {
  96.      $image_old = imagecreatefrompng($ImageName);
  97.    }
  98.  
  99.    // skonwertuj obraz do formatu JPG
  100.    $image_jpg = imagecreatetruecolor($width, $height);
  101.    imagecopyresampled($image_jpg, $image_old, 0, 0, 0, 0,
  102.                     $width, $height, $width, $height);
  103.    imagejpeg($image_jpg, $newfilename);
  104.    imagedestroy($image_old);
  105.    imagedestroy($image_jpg);
  106.  }
  107.  
  108. //**WSTAW NASTĘPUJˇCE WIERSZE
  109.  
  110.  $newthumbname = $ImageThumb . $lastpicid . ".jpg";
  111.  
  112.  // pobierz wymiary miniaturki
  113.  $thumb_width = "180";
  114.  $thumb_height ="132";
  115.  
  116.  // utwórz miniaturkę
  117.  $largeimage = imagecreatefromjpeg($newfilename);
  118.  $thumb = imagecreatetruecolor($thumb_width, $thumb_height);
  119.  imagecopyresampled($thumb, $largeimage, 0, 0, 0, 0,
  120.                    $thumb_width, $thumb_height, $width, $height);
  121.  imagejpeg($thumb, $newthumbname);
  122.  imagedestroy($largeimage);
  123.  imagedestroy($thumb);
  124. //**KONIEC WSTAWIANYCH WIERSZY
  125.  
  126.  }
  127. }
  128.      die();
  129.    }
  130.  } else {
  131. ?>
  132.  
  133. <p>
  134.      <font color=red>
  135.        Prosze wypełnić pola z gwiazdkami    </font>
  136.  <br>
  137.  <form action="asd.php" method="post" enctype="multipart/form-data">
  138. <?
  139.        require('dod_wsad.php');
  140. ?>
  141.  </form>
  142. </p>
  143. <?php
  144.  }
  145. } else {
  146. ?>
  147.  
  148. <p>  Witamy na stronie dodawania produktu do magazynu!
  149.  <form action="asd.php" method="post" enctype="multipart/form-data">
  150. <?
  151.  require('dod_wsad.php');
  152. ?>
  153.  </form>
  154. </p>
  155. <?php
  156. }
  157. ?> <a href=asd.php>Dodaj produkt</a><a href=../index.php>Sklep</a>   </td></tr> </table>
  158. </body>
  159. </html>
blooregard
Jeśli gdzieś sprawdzasz typ mime pliku graficznego, dodaj image/pjpeg dla IE (IE nie "widzi" image/jpeg).

Wiele razy miałem ten sam problem smile.gif
rosirosi
Kolego "blooregard" a mozesz mi zobaczyc gdzie to powinno byc, ja wzialem polowe tego kodu z przykladu kssiazkowego, tylko ze tak bylo przesylanie z formularza w innym pliku a ja tu chcialem zrobic wszystko w jednym pliku poniewaz tak latwiej i dobrze udalo mi sie zrobic walidacje do pola text, (niestety do pola file jeszcze mi sie nie udalo)... Tak w starej wersji gdzie bylo przesylanie z innego pliku formularza tez nie bylo zadeklarowanego MIME a jednak działalo, i juz sam nie wiem....
Podsunal byc mysl gdzie i jak to powinno wygladac?

15:43:01

OKi udalo sie jakos to zrobic, otoz w lini 98
  1. $image_old = imagecreatefrompng($ImageName);

zmieniłem na
  1. $image_old = imagecreatefromjpg($ImageName);

zrezydnowalem w ten sposob z rozszerzenia png, ale po co mi to....

kurcze same problemy z tym IE, jeszcze nie chce mi przyjac grafiki kiedy rozszerzenie jest z duzych liter np. JPG
podpowie ktos moze jak zrobic zeby dziala mi walidacja, kiedy nie doda sie zadnego pliku graficznego ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.