Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Problem z przesyłaniem danych z SELECT-a
Forum PHP.pl > Forum > Przedszkole
miedziopl
Witam
Mam jeszcze jeden problem a mianowicie. Mam formularz który wysyła plik na serwer oraz przesyła jego nazwę a także parametry z listy rozwijanej SELECT . Chciałbym aby po wybraniu odpowiedniej opcji w select i wysłaniu zdjęcia dodało mi do tabeli zdjecia id_Formatu. ale coś mi tu nie bangla w tym kodzie. Dodaje mi tylko id_Zdjecia i jego nazwę. Tabela wygląda tak: (id_Zdjecie,id_Format,nazwa_pliku) ale nie wiem co zrobić żeby dostać do bazy id_Format. Siedzę nad tym od wczoraj proszę o pomoc.:


  1. <?php
  2. include "funkcje_bazy.php";
  3. function getQueryResults($zapytanie)
  4. {
  5. if(!$wynik = mysql_query($zapytanie)){
  6. echo("Problem z bazą danych: getQueryResults: odrzucone zapytanie: $zapytanie");
  7. return false;
  8. }
  9. return @mysql_fetch_array($wynik);
  10. }
  11.  
  12.  
  13. echo '<form action="main.php?action=wyslij" method="post" enctype="multipart/form-data" name="form1">
  14. <p align="center">Wysyłanie plików na serwer. </p>';
  15. echo '<table width="422" border="1" align="center">
  16. <tr>
  17. <th width="444" scope="row"><input name="plik" type="file" size="50"/>
  18. <input name="max_file_size" type="hidden" value="1048576" /></th>
  19. </tr>';
  20. echo '<tr><td>';
  21. echo '<select name="foto">';
  22. // połączenie z bazą danych na local hoscie i wybranie odpowiedniej bazy danych
  23. $polacz = mysql_connect('localhost', 'miedzio', 'mloda');
  24. $wybierz = mysql_select_db('fotograf');
  25. // zapytanie do bazy o podanie wymiar, Rodzaj_papieru, Cena
  26. $zapytanie = "SELECT wymiar, Rodzaj_papieru, Cena FROM Format";
  27. $wynik = mysql_query($zapytanie);
  28. while($wiersz = mysql_fetch_array($wynik) )
  29. {
  30. echo '<option valuae="'.$wiersz['wymiar'].'">'.$wiersz['wymiar'].$wiersz['Rodzaj_papieru'].$wiersz['Cena'].'</option>';
  31. }
  32. echo '</select>';
  33. echo '</td>
  34. <th scope="row"><input value="Wyślij plik" type="submit" /> </th>
  35. </tr>
  36. </table>';
  37.  
  38. echo '</form>';
  39.  
  40. if($_SESSION['id_Uzytkownik'])
  41. // gdzie zostanie umieszczony plik
  42. $sciezka_docelowa = 'obrazki/'.@$_SESSION['id_Uzytkownik'].'/';
  43. $nazwa_pliku = $_FILES["plik". $i]["name"];
  44. $nazwa_pliku = stripslashes($nazwa_pliku);
  45. $nazwa_pliku = str_replace("?","",$nazwa_pliku);
  46. // kopiowanie pliku tymczasowego na serwerze do miejsca docelowego
  47. if (copy($_FILES["plik". $i]["tmp_name"], $sciezka_docelowa.$nazwa_pliku)) {
  48. echo "$nazwa_pliku | plik wgrany!<br>";
  49. } else {
  50. echo "nie można było wgrać pliku!<br>";
  51. }
  52. $sciezka_docelowa = 'obrazki/'.@$_SESSION['id_Uzytkownik'].'/';
  53. $conn = mysql_connect('localhost', 'miedzio', 'mloda') or die('Error connecting to mysql');
  54. mysql_select_db('fotograf');
  55. $zapytanie=mysql_query("insert into zdjecia values(NULL,'$id_Format','$nazwa_pliku')");
  56. echo "<a href=main.php>Wracaj ...";
  57. ?>
  58. <?php
  59. $katalog='obrazki/'.$_SESSION['id_Uzytkownik'].'';
  60. $katalogminiaturki = 'miniaturki/'.$_SESSION['id_Uzytkownik'].'';
  61. $galeria = opendir( $katalog );
  62. closedir($galeria);
  63.  
  64. ?>
  65. </body>
  66. </html>
pianta_d
Witam

W którym miejscu deklarujesz zmienną $id_Format

masz błąd w 31 wierszu
  1. valuae="'.$wiersz['wymiar'].'"
miedziopl
błąd poprawiłem i dodałem nie wiem czy dobrze :

  1. $zapytanie = "SELECT id_Format, wymiar, Rodzaj_papieru, Cena FROM Format";
  2. $wynik = mysql_query($zapytanie);
  3. while($wiersz = mysql_fetch_array($wynik) )
  4. {
  5. echo '<option name="format" "value="'.$wiersz['wymiar'].'">'.$wiersz['id_Format'].$wiersz['wymiar'].$wiersz['Rodzaj_papieru'].$wiersz['Cena'].'</option>';
  6. }
  7. echo '</select>';


a linii 54 dodałem przed połączeniem:
  1. $id_Format=$_POST['format'];
pianta_d
Ok, poprawiłeś, dodałeś (inne czynności wykonałeś)... jaki rezultat?
Sieje błędami, dodaje wartość, czy może jest już OK? smile.gif


Pozdrawiam
miedziopl
zrobiłem var_dump od id_Format i nadal zwraca mi "NULL" i nie dodaje rekordu do bazy.
pianta_d
Witam

A $_POST[id_Format] przekazuje porawne dane?
Jeśli tak, sprawdź literówki i ważna jest wielkość liter w nazwie kolumn bazy.

Pozdrawiam
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.