Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]UPDATE do bazy danych z formularza tabeli
Forum PHP.pl > Forum > Przedszkole
damiandamian
Elo 420
Chciałbym żeby można było edytować wartości ocen w tabeli wyświetlającej oceny wszystkich uczniów danej klasy .

klasa.php
  1. <table width="100%" align="center" border="1" bordercolor="#d5d5d5" cellpadding="0" cellspacing="0">
  2. <tr>
  3. <?php
  4.  
  5.  
  6. if ($_SESSION['nauczyciel'] = false)
  7. {
  8. header('Location: logout.php');
  9. exit();
  10. }
  11.  
  12.  
  13. echo "<p>Witaj ".$_SESSION['user'].'! [ <a href="logout.php">Wyloguj się!</a> ] </p>';
  14.  
  15.  
  16.  
  17. ini_set("display_errors", 0);
  18. require_once "connect.php";
  19. $polaczenie = mysqli_connect($db_host, $db_user, $db_password, $db_name);
  20. mysqli_query($polaczenie, "SET CHARSET utf8");
  21. mysqli_query($polaczenie, "SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");
  22. mysqli_select_db($polaczenie, $database);
  23.  
  24. $class = $_SESSION['class'] ;
  25. echo $class ;
  26.  
  27. $rezultat = mysqli_query($polaczenie, ("SELECT uczniowie.id, uczniowie.klasa, uczniowie.nr, oceny.id_ucznia, oceny.polski, oceny.matematyka, oceny.niemiecki, oceny.angielski, oceny.wf, oceny.informatyka, oceny.fizyka, oceny.biologia, oceny.fizyka, oceny.biologia, oceny.historia, oceny.religia, oceny.technika, oceny.chemia, oceny.geografia FROM oceny, uczniowie WHERE uczniowie.id = oceny.id_ucznia AND uczniowie.klasa = '$class' ORDER BY uczniowie.nr ASC"));
  28. $ile = mysqli_num_rows($rezultat);
  29.  
  30.  
  31.  
  32.  
  33. if ($ile>=1)
  34. {
  35. echo<<<END
  36. <td width="50" align="center" bgcolor="e5e5e5">Nr</td>
  37. <td width="100" align="center" bgcolor="e5e5e5">Polski</td>
  38. <td width="100" align="center" bgcolor="e5e5e5">Matematyka</td>
  39. <td width="100" align="center" bgcolor="e5e5e5">Angielski</td>
  40. <td width="100" align="center" bgcolor="e5e5e5">Niemiecki</td>
  41. <td width="100" align="center" bgcolor="e5e5e5">WF</td>
  42. <td width="100" align="center" bgcolor="e5e5e5">Informatyka</td>
  43. <td width="100" align="center" bgcolor="e5e5e5">Fizyka</td>
  44. <td width="100" align="center" bgcolor="e5e5e5">Biologia</td>
  45. <td width="100" align="center" bgcolor="e5e5e5">Historia</td>
  46. <td width="100" align="center" bgcolor="e5e5e5">Religia</td>
  47. <td width="100" align="center" bgcolor="e5e5e5">Technika</td>
  48. <td width="100" align="center" bgcolor="e5e5e5">Chemia</td>
  49. <td width="100" align="center" bgcolor="e5e5e5">Geografia</td>
  50.  
  51. </tr><tr >
  52. END;
  53. }
  54.  
  55. for ($i = 1; $i <= $ile; $i++)
  56. {
  57.  
  58. $row = mysqli_fetch_assoc($rezultat);
  59. $a1 = $row['nr'];
  60. $a2 = $row['polski'];
  61. $a3 = $row['matematyka'];
  62. $a4 = $row['angielski'];
  63. $a5 = $row['niemiecki'];
  64. $a6 = $row['wf'];
  65. $a7 = $row['informatyka'];
  66. $a8 = $row['fizyka'];
  67. $a9 = $row['biologia'];
  68. $a10 = $row['historia'];
  69. $a11 = $row['religia'];
  70. $a12 = $row['technika'];
  71. $a13 = $row['chemia'];
  72. $a14 = $row['geografia'];
  73.  
  74.  
  75. echo<<<END
  76. <form action="edytuj.php" name="edytuj" method="post">
  77. <td width="10" align="center">$a1</td>
  78. <td width="100" align="center"><input type="text" name="$a2" value="$a2"></td>
  79. <td width="100" align="center"><input type="text" name="$a3" value="$a3"></td>
  80. <td width="100" align="center"><input type="text" name="$a4" value="$a4"></td>
  81. <td width="100" align="center"><input type="text" name="$a5" value="$a5"></td>
  82. <td width="100" align="center"><input type="text" name="$a6" value="$a6"></td>
  83. <td width="100" align="center"><input type="text" name="$a7" value="$a7"></td>
  84. <td width="100" align="center"><input type="text" name="$a8" value="$a8"></td>
  85. <td width="100" align="center"><input type="text" name="$a9" value="$a9"></td>
  86. <td width="100" align="center"><input type="text" name="$a10" value="$a10"></td>
  87. <td width="100" align="center"><input type="text" name="$a11" value="$a11"></td>
  88. <td width="100" align="center"><input type="text" name="$a12" value="$a12"></td>
  89. <td width="100" align="center"><input type="text" name="$a13" value="$a13"></td>
  90. <td width="100" align="center"><input type="text" name="$a14" value="$a14"></td>
  91. </tr>
  92.  
  93. <tr>
  94. </form>
  95. END;
  96. }
  97. echo '<form action="edytuj.php" name="edytuj" method="post">
  98. <input type="submit" name"edytuj" method="post"></form>' ;
  99.  
  100.  
  101.  
  102.  
  103. $polaczenie->close();
  104.  
  105.  
  106. ?>
  107. </tr></table>




Tabela wyświetla się prawidłowo. Wysyłam wartości do pliku edytuj.php ale to nie działa . Zaznaczam że chciałbym aby można było edytować oceny różnych uczniów z różnych przedmiotów na raz

edytuj.php

  1. <?php
  2.  
  3.  
  4.  
  5.  
  6. ini_set("display_errors",0);
  7. require_once "connect.php";
  8. $polaczenie = mysqli_connect($db_user, $db_password, $db_name, $db_host);
  9. mysqli_select_db($polaczenie, $database); ///połączenie z bazą
  10.  
  11. $a1 = $_POST['$a1'];
  12. $a2 = $_POST['$a2'];
  13. $a3 = $_POST['$a3'];
  14. $a4 = $_POST['$a4'];
  15. $a5 = $_POST['$a5'];
  16. $a6 = $_POST['$a6'];
  17. $a7 = $_POST['$a7'];
  18. $a8 = $_POST['$a8'];
  19. $a9 = $_POST['$a9'];
  20. $a10 = $_POST['$a10'];
  21. $a11 = $_POST['$a11']; ///zmienne z klasa.php
  22. $a12 = $_POST['$a12'];
  23. $a13 = $_POST['$a13'];
  24. $a14 = $_POST['$a14'];
  25.  
  26.  
  27.  
  28.  
  29. $rezultat = mysqli_query($polacznie, ("UPDATE oceny SET oceny.polski = '$a2', oceny.matematyka = '$a3', oceny.angielski = '$a4', oceny.niemiecki = '$a5', oceny.wf = '$a6', oceny.informatyka = '$a7', oceny.fizyka = '$a8', oceny.biologia = '$a9', oceny.historia = '$a10', oceny.religia = '$a11', oceny.technika = '$a12', oceny.chemia = '$a13', oceny.geografia = '$a14' WHERE id_ucznia = $a1 "));
  30.  
  31. $polaczenie->close;
  32. header('Location: klasa.php');
  33.  
  34.  
  35.  
  36.  
  37.  
  38. ?>



budowa bazy danych :

oceny
  1. CREATE TABLE `oceny` (
  2. `id_ucznia` int(11) NOT NULL,
  3. `polski` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  4. `matematyka` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  5. `angielski` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  6. `niemiecki` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  7. `wf` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  8. `informatyka` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  9. `fizyka` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  10. `biologia` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  11. `historia` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  12. `religia` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  13. `technika` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  14. `chemia` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL,
  15. `geografia` varchar(30) COLLATE utf8mb4_polish_ci NOT NULL
  16. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_polish_ci;




uczniowie


  1. CREATE TABLE `uczniowie` (
  2. `id` int(11) NOT NULL,
  3. `user` varchar(30) CHARACTER SET latin1 NOT NULL,
  4. `pass` varchar(30) CHARACTER SET latin1 NOT NULL,
  5. `nr` tinyint(4) NOT NULL,
  6. `klasa` varchar(30) CHARACTER SET latin1 NOT NULL
  7. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_polish_ci;



Zastanwiam się nad użyciem tablicy asocjacyjnej ale nie bardzo wiem jakby miała wyglądać :/
nospor
$a1 = $_POST['$a1'];

1) w pliku edit.php nie istnieja zmienne $a1
2) Jak juz cos to:
$a1 = $_POST[$a1];
Ale podkreslam ponownie: zmienne $a1 nie istnieja w pliku edit.php






damiandamian
Chodzi Ci o to że nie jest wysyłana z <form> ? Musze użyć input ? Bo korzystając z SESSION nie wiem czy będzie wiedziało dla którego usera zmienic oceny :/ Co sadzisz o reszcie kodu bo tak w sumie to jest najważniejsze smile.gif
nospor
Chodzi o to, ze korzystaz ze zmiennych $a1 itp a one nie istnieja w srkypcie edtyuj.php.

Twoj form jest w POST
zrob sobie
print_r($_POST);
i zobacz co tam masz

Co do reszty kodu to jest fatalny.
Odpalasz sesje po tym jak juz slesz cos do przegladarki, to pewnie w ogole ci sie nie odpala

NIe rozroznasz przypisania od porownania, chocby o tu:
if ($_SESSION['nauczyciel'] = false)

Struktura twojej bazy wola o pomste do nieba

Sposob laczenia sie do bazu i operacji na niej tez taki sobie.

Co tu duzo gadac: widac ze dopiero zaczynasz i dluga droga przed toba wink.gif
viking
if ($_SESSION['nauczyciel'] = false) Nie = a ==. Poczytaj czym się różni przypisanie od porównania.
Dostajesz zapewne warning headers already sent.
Kodowanie ustawia się przez http://php.net/manual/pl/mysqli.set-charset.php
Czy mnie się zdaje, czy podawałem strukturę poprawną bazy a i jak to zignorowałeś?
Zamiast klepać przestarzałe atrybuty w html (np bgcolor) użyj CSS.
Na koncu obiektowe $polaczenie->close(); chociaż wcześniej nie był tworzony obiekt.
nospor
Cytat
Czy mnie się zdaje, czy podawałem strukturę poprawną bazy a i jak to zignorowałeś?
A faktycznie zignorowal. Ze tez ci sie chcialo teraz ponownie strzepic jezyk skoro i tak nie slucha...
viking
Jak już powiedziałem a to niech będzie b też. Chociaż ostatnimi czasy poziom przedszkola to bardziej kołyska.
nospor
Cytat
Jak już powiedziałem a to niech będzie b też. Chociaż ostatnimi czasy poziom przedszkola to bardziej kołyska.
Skoro lubisz gadac alfabet sam do siebie.... wink.gif
viking
Na dobranoc wymieniam alfabetycznie wszystkie funkcje PHP wacko.gif
nospor
Sado maso.. wink.gif
Ja tam licze bledy PARSE ERROR...1 PARSE ERROR, 2 PARSE ERROR.....101 PARSE ERROR...... hrrrrrrrrr wink.gif
damiandamian
Nie zignorowałem tylko zrobiłem to po swojemu i zaczeło działać smile.gif Jutro spróbuje to ogarnąć i dam znać. Nie zamierzam wiązać przyszłości z programowaniem więc wcale nie tak dużo tej pracy smile.gif Został ostatni element układanki i koniec. Nie ja w tym projekcie zajmuje sie stylami i oprawą graficzną wink.gif

Ogarnełem porównywanie i przyrównywanie i pouzmieniałem , dodałem kodowanie znaków . Wpadłem na pomysł żeby użyć tablicy asocjacyjnej. Tylko że chce przypisać do id wszystkie przedmioty , a w tablicy da sie chyba tylko z tego co czytałem jedna wartość jednemu kluczowi przypisać więc

  1. echo<<<END
  2. <form action="klasa.php" name="edytuj" method="post">
  3. <td width="10" align="center">$a1</td>
  4. <td width="100" align="center"><input type="text" name="$b2" value="$a2"></td>
  5. <td width="100" align="center"><input type="text" name="$b3" value="$a3"></td>
  6. <td width="100" align="center"><input type="text" name="$b4" value="$a4"></td>
  7. <td width="100" align="center"><input type="text" name="$b5" value="$a5"></td>
  8. <td width="100" align="center"><input type="text" name="$b6" value="$a6"></td>
  9. <td width="100" align="center"><input type="text" name="$b7" value="$a7"></td>
  10. <td width="100" align="center"><input type="text" name="$b8" value="$a8"></td>
  11. <td width="100" align="center"><input type="text" name="$b9" value="$a9"></td>
  12. <td width="100" align="center"><input type="text" name="$b10" value="$a10"></td>
  13. <td width="100" align="center"><input type="text" name="$b11" value="$a11"></td>
  14. <td width="100" align="center"><input type="text" name="$b12" value="$a12"></td>
  15. <td width="100" align="center"><input type="text" name="$b13" value="$a13"></td>
  16. <td width="100" align="center"><input type="text" name="$b14" value="$a14"></td>
  17. </tr>
  18.  
  19. <tr>
  20.  
  21. END;
  22. }
  23. echo '<input type="submit" name"edytuj" ></form>' ;
  24.  
  25.  
  26.  
  27. $b1 = $a1;
  28. $b2 = $_POST['$b2'];
  29. $b3 = $_POST['$b3'];
  30. $b4 = $_POST['$b4'];
  31. $b5 = $_POST['$b5'];
  32. $b6 = $_POST['$b6'];
  33. $b7 = $_POST['$b7'];
  34. $b8 = $_POST['$b8'];
  35. $b9 = $_POST['$b9'];
  36. $b10 = $_POST['$b10'];
  37. $b11 = $_POST['$b11'];
  38. $b12 = $_POST['$b12'];
  39. $b13 = $_POST['$b13'];
  40. $b14 = $_POST['$b14'];
  41.  
  42. $zmien = array('$b1' => '$b1',
  43. '$b1' => '$b2',
  44. '$b1' => '$b3',
  45. '$b1' => '$b4',
  46. '$b1' => '$b5',
  47. '$b1' => '$b6',
  48. '$b1' => '$b7',
  49. '$b1' => '$b8',
  50. '$b1' => '$b9',
  51. '$b1' => '$b10',
  52. '$b1' => '$b11',
  53. '$b1' => '$b12',
  54. '$b1' => '$b13',
  55. '$b1' => '$b14' );
  56.  
  57.  
  58.  
  59. $_SESSION['zmien'] = $zmien ;
  60.  
  61. $polaczenie->close();
  62.  
  63. header('Location: edytuj.php');





  1. ini_set("display_errors",0);
  2. require_once "connect.php";
  3. $polaczenie = mysqli_connect($db_user, $db_password, $db_name, $db_host);
  4. mysqli_query($polaczenie, "SET CHARSET utf8");
  5. mysqli_query($polaczenie, "SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");
  6. mysqli_select_db($polaczenie, $database);
  7.  
  8.  
  9.  
  10.  
  11. $zmien = $_SESSION['zmien'];
  12.  
  13.  
  14. $b1 = $zmien['$b1'];
  15. $b2 = $zmien['$b2'];
  16. $b3 = $zmien['$b3'];
  17. $b4 = $zmien['$b4'];
  18. $b5 = $zmien['$b5'];
  19. $b6 = $zmien['$b6'];
  20. $b7 = $zmien['$b7'];
  21. $b8 = $zmien['$b8'];
  22. $b9 = $zmien['$b9'];
  23. $b10 = $zmien['$b10'];
  24. $b11 = $zmien['$b11'];
  25. $b12 = $zmien['$b12'];
  26. $b13 = $zmien['$b13'];
  27. $b14 = $zmien['$b14'];
  28.  
  29.  
  30. $rezultat = mysqli_query($polacznie, ("UPDATE oceny SET polski = '$b2', matematyka = '$b3', angielski = '$b4', niemiecki = '$b5', wf = '$b6', informatyka = '$b7', fizyka = '$b8', biologia = '$b9', historia = '$b10', religia = '$b11', technika = '$b12', chemia = '$b13', geografia = '$b14' WHERE id_ucznia = $a1 "));
  31.  
  32. $polaczenie->close;
  33. header ('Location: klasa.php');




Jakieś pomysły jakiej funkcji użyć ? :/ Nie chce zmieniać bazy danych bo cała strona już działa na tej tylko ten jeden elemencik pozostał biggrin.gif
nospor
$b2 = $_POST['$b2'];
Widze w zaparte idziesz w ignorowaniu tego co ci ludzie pisza. No nic, co kraj to obyczaj smile.gif
damiandamian
to nie tak że ide w zaparte tylko po prostu nie rozumiem tego co mówicie :/ jakbyście mogli to troche bardziej "łopatologicznie" wytłumaczyć smile.gif
mówiłeś że w plik edytuj.php nie dostaje zmiennej $_POST
Teraz jest w pliku klasa.php i z tych zmiennych tworzę tablice asocjacyjną.
Którą z kolei wysyłam sesją do edytuj.php

  1. $zmien = array('$b1' => '$b1', '$b2', '$b3', '$b5', '$b6', '$b7', '$b8', '$b9', '$b11', '$b12', '$b13', '$b14' );


takie rozwiązanie tej tablicy jest chyba lepsze

Więc jeśli nie $_POST to jak mam wysłać zmienione wartości tabeli? $_GET ?


Spizgam sie i za godzinke będe smile.gif To zawsze pomagało. Bo bez tego nie rozumiem jak to ma działać więc nie rozumiem czemu nie działa. Po buchu też nie wiem jak to działa ale zaczyna działać zawsze biggrin.gif
viking
Poczytaj czym się różni w php ' od " oraz odwoływać się do elementów tablicy.
nospor
Cytat
mówiłeś że w plik edytuj.php nie dostaje zmiennej $_POST
Nigdzie nie pisalem ze nie ma $_POST. Pisalem ze nie ma $a1 - a to zasadnicza roznica
Pisalem tez jak poprawnie sie dobierac do $_POST a ty nadal walisz
$b2 = $_POST['$b2'];
damiandamian
Dobra


EDIT : Zrobiłem coś takiego wszystko działa, tylko gdzieś w drugiej tabeli w poleceniu INSERT INTO jest chyba błąd (nie moge sprawdzić w SQL bo nie mam tam zmiennych ). Chciałem użyć do tego tablicy asc. ale też nie daje efektów :/


  1. <?php
  2.  
  3.  
  4. if ($_SESSION['nauczyciel'] == false)
  5. {
  6. header('Location: logout.php');
  7. exit();
  8. }
  9.  
  10.  
  11. echo "<p>Witaj ".$_SESSION['user'].'! [ <a href="logout.php">Wyloguj się!</a> ] </p>';
  12.  
  13.  
  14.  
  15. ini_set("display_errors", 0);
  16. require_once "connect.php";
  17. $polaczenie = mysqli_connect($db_host, $db_user, $db_password, $db_name);
  18. mysqli_query($polaczenie, "SET CHARSET utf8");
  19. mysqli_query($polaczenie, "SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");
  20. mysqli_select_db($polaczenie, $database);
  21.  
  22. $class = $_SESSION['class'] ;
  23. echo $class ;
  24.  
  25. $rezultat = mysqli_query($polaczenie, ("SELECT uczniowie.id, uczniowie.klasa, uczniowie.nr, oceny.id_ucznia, oceny.polski, oceny.matematyka, oceny.niemiecki, oceny.angielski, oceny.wf, oceny.informatyka, oceny.fizyka, oceny.biologia, oceny.fizyka, oceny.biologia, oceny.historia, oceny.religia, oceny.technika, oceny.chemia, oceny.geografia FROM oceny, uczniowie WHERE uczniowie.id = oceny.id_ucznia AND uczniowie.klasa = '$class' ORDER BY uczniowie.nr ASC"));
  26. $ile = mysqli_num_rows($rezultat);
  27. $_SESSION['ile'] = $ile;
  28.  
  29.  
  30.  
  31. if ($ile>=1)
  32. {
  33. echo<<<END
  34. <td width="50" align="center" bgcolor="e5e5e5">Nr</td>
  35. <td width="100" align="center" bgcolor="e5e5e5">Polski</td>
  36. <td width="100" align="center" bgcolor="e5e5e5">Matematyka</td>
  37. <td width="100" align="center" bgcolor="e5e5e5">Angielski</td>
  38. <td width="100" align="center" bgcolor="e5e5e5">Niemiecki</td>
  39. <td width="100" align="center" bgcolor="e5e5e5">WF</td>
  40. <td width="100" align="center" bgcolor="e5e5e5">Informatyka</td>
  41. <td width="100" align="center" bgcolor="e5e5e5">Fizyka</td>
  42. <td width="100" align="center" bgcolor="e5e5e5">Biologia</td>
  43. <td width="100" align="center" bgcolor="e5e5e5">Historia</td>
  44. <td width="100" align="center" bgcolor="e5e5e5">Religia</td>
  45. <td width="100" align="center" bgcolor="e5e5e5">Technika</td>
  46. <td width="100" align="center" bgcolor="e5e5e5">Chemia</td>
  47. <td width="100" align="center" bgcolor="e5e5e5">Geografia</td>
  48.  
  49. </tr><tr >
  50. END;
  51. }
  52.  
  53. for ($i = 1; $i <= $ile; $i++)
  54. {
  55.  
  56. $row = mysqli_fetch_assoc($rezultat);
  57. $a1 = $row['nr'];
  58. $a2 = $row['polski'];
  59. $a3 = $row['matematyka'];
  60. $a4 = $row['angielski'];
  61. $a5 = $row['niemiecki'];
  62. $a6 = $row['wf'];
  63. $a7 = $row['informatyka'];
  64. $a8 = $row['fizyka'];
  65. $a9 = $row['biologia'];
  66. $a10 = $row['historia'];
  67. $a11 = $row['religia'];
  68. $a12 = $row['technika'];
  69. $a13 = $row['chemia'];
  70. $a14 = $row['geografia'];
  71.  
  72.  
  73. echo<<<END
  74. <td width="50" align="center">$a1</td>
  75. <td width="100" align="center">$a2</td>
  76. <td width="100" align="center">$a3</td>
  77. <td width="100" align="center">$a4</td>
  78. <td width="100" align="center">$a5</td>
  79. <td width="100" align="center">$a6</td>
  80. <td width="100" align="center">$a7</td>
  81. <td width="100" align="center">$a8</td>
  82. <td width="100" align="center">$a9</td>
  83. <td width="100" align="center">$a10</td>
  84. <td width="100" align="center">$a11</td>
  85. <td width="100" align="center">$a12</td>
  86. <td width="100" align="center">$a13</td>
  87. <td width="100" align="center">$a14</td>
  88. </tr><tr>
  89. END;
  90.  
  91. }
  92.  
  93.  
  94.  
  95.  
  96. echo '<table width="100%" align="center" border="1" bordercolor="#d5d5d5" cellpadding="0" cellspacing="0"><tr>';
  97.  
  98.  
  99.  
  100.  
  101.  
  102. $i = 1;
  103. echo '<form action="klasa.php" method="post" name="edit"> <input type="submit" value="Submit" ></form>' ;
  104. if ($ile>=1)
  105. {
  106. echo<<<END
  107. <td width="50" align="center" bgcolor="e5e5e5">Nr</td>
  108. <td width="100" align="center" bgcolor="e5e5e5">Polski</td>
  109. <td width="100" align="center" bgcolor="e5e5e5">Matematyka</td>
  110. <td width="100" align="center" bgcolor="e5e5e5">Angielski</td>
  111. <td width="100" align="center" bgcolor="e5e5e5">Niemiecki</td>
  112. <td width="100" align="center" bgcolor="e5e5e5">WF</td>
  113. <td width="100" align="center" bgcolor="e5e5e5">Informatyka</td>
  114. <td width="100" align="center" bgcolor="e5e5e5">Fizyka</td>
  115. <td width="100" align="center" bgcolor="e5e5e5">Biologia</td>
  116. <td width="100" align="center" bgcolor="e5e5e5">Historia</td>
  117. <td width="100" align="center" bgcolor="e5e5e5">Religia</td>
  118. <td width="100" align="center" bgcolor="e5e5e5">Technika</td>
  119. <td width="100" align="center" bgcolor="e5e5e5">Chemia</td>
  120. <td width="100" align="center" bgcolor="e5e5e5">Geografia</td>
  121.  
  122. </tr><tr >
  123. END;
  124. }
  125.  
  126. for ($i = 1; $i <= $ile; $i++)
  127. {
  128.  
  129.  
  130.  
  131. echo<<<END
  132.  
  133. <td width="10" align="center"><input type="hidden" name="$b1" value="$i"></td>
  134. <td width="100" align="center"><input type="text" name="$b2" ></td>
  135. <td width="100" align="center"><input type="text" name="$b3" ></td>
  136. <td width="100" align="center"><input type="text" name="$b4" ></td>
  137. <td width="100" align="center"><input type="text" name="$b5" ></td>
  138. <td width="100" align="center"><input type="text" name="$b6" ></td>
  139. <td width="100" align="center"><input type="text" name="$b7" ></td>
  140. <td width="100" align="center"><input type="text" name="$b8" ></td>
  141. <td width="100" align="center"><input type="text" name="$b9" ></td>
  142. <td width="100" align="center"><input type="text" name="$b10" ></td>
  143. <td width="100" align="center"><input type="text" name="$b11" ></td>
  144. <td width="100" align="center"><input type="text" name="$b12" ></td>
  145. <td width="100" align="center"><input type="text" name="$b13" ></td>
  146. <td width="100" align="center"><input type="text" name="$b14" ></td>
  147. </tr><tr></form>
  148. END;
  149.  
  150.  
  151.  
  152. if(isset($_POST['submit']))
  153. { $b1 = $_POST['b1'];
  154. $b2 = $_POST['b2'];
  155. $b3 = $_POST['b3'];
  156. $b4 = $_POST['b4'];
  157. $b5 = $_POST['b5'];
  158. $b6 = $_POST['b6'];
  159. $b7 = $_POST['b7'];
  160. $b8 = $_POST['b8'];
  161. $b9 = $_POST['b9'];
  162. $b10 = $_POST['b10'];
  163. $b11 = $_POST['b11'];
  164. $b12 = $_POST['b12'];
  165. $b13 = $_POST['b13'];
  166. $b14 = $_POST['b14'];
  167.  
  168. $oceny = array("id_ucznia" => $i, "polski" => $b2,"matematyka" => $b3, "angielski" => $b4, "niemiecki" => $b5, "wf" => $b6, "informatyka" => $b7, "fizyka" => $b8, "biologia" => $b9, "historia" => $b10, "religia" => $b11, "technika" => $b12, "chemia" => $b13, "geografia" => $b14,);
  169.  
  170. $oceny['id_ucznia'] = $b1;
  171. $oceny['polski'] = $b2;
  172. $oceny['matematyka'] = $b3;
  173. $oceny['angielski'] = $b4;
  174. $oceny['niemiecki'] = $b5;
  175. $oceny['wf'] = $b6;
  176. $oceny['informatyka'] = $b7;
  177. $oceny['fizyka'] = $b8;
  178. $oceny['biologia'] = $b9;
  179. $oceny['historia'] = $b10;
  180. $oceny['religia'] = $b11;
  181. $oceny['technika'] = $b12;
  182. $oceny['chemia'] = $b13;
  183. $oceny['geografia'] = $b14;
  184.  
  185. $key = array_keys($oceny);
  186. echo ($oceny['id']);
  187.  
  188.  
  189. print_r($oceny);
  190.  
  191. $edit = mysqli_query($link, ("INSTERT INTO oceny ( polski, matematyka, angielski, niemiecki, wf, informatyka, fizyka, biologia, historia, religia, technika, chemia, geografia) VALUES ('$b2', '$b3', '$b4', '$b5', '$b6', '$b7', '$b8', '$b9', '$b10', '$b11', '$b12', '$b13', '$b14') WHERE id_ucznia LIKE".$i));
  192.  
  193.  
  194. mysqli_free_result($edit);
  195. }
  196.  
  197. /* close connection */
  198. mysqli_close($link);
  199.  
  200. }
  201.  
  202. ?>





EDIT błędy znikneły ale dalej nie działa ...

  1. <td width="10" align="center"><input type="hidden" name="b1" value="$i"></td>
  2. <td width="100" align="center"><input type="text" name="b2" ></td>
  3. <td width="100" align="center"><input type="text" name="b3" ></td>
  4. <td width="100" align="center"><input type="text" name="b4" ></td>
  5. <td width="100" align="center"><input type="text" name="b5" ></td>
  6. <td width="100" align="center"><input type="text" name="b6" ></td>
  7. <td width="100" align="center"><input type="text" name="b7" ></td>
  8. <td width="100" align="center"><input type="text" name="b8" ></td>
  9. <td width="100" align="center"><input type="text" name="b9" ></td>
  10. <td width="100" align="center"><input type="text" name="b10" ></td>
  11. <td width="100" align="center"><input type="text" name="b11" ></td>
  12. <td width="100" align="center"><input type="text" name="b12" ></td>
  13. <td width="100" align="center"><input type="text" name="b13" ></td>
  14. <td width="100" align="center"><input type="text" name="b14" ></td>
  15. </tr><tr></form>
  16.  
  17.  
  18.  
  19. if(isset($_POST['submit']))
  20. { $b1 = $_POST['b1'];
  21. $b2 = $_POST['b2'];
  22. $b3 = $_POST['b3'];
  23. $b4 = $_POST['b4'];
  24. $b5 = $_POST['b5'];
  25. $b6 = $_POST['b6'];
  26. $b7 = $_POST['b7'];
  27. $b8 = $_POST['b8'];
  28. $b9 = $_POST['b9'];
  29. $b10 = $_POST['b10'];
  30. $b11 = $_POST['b11'];
  31. $b12 = $_POST['b12'];
  32. $b13 = $_POST['b13'];
  33. $b14 = $_POST['b14'];


Kod
Static analysis:

4 errors were found during analysis.

Unexpected character. (near "$" at position 154)
Unexpected character. (near "$" at position 270)
Unexpected beginning of statement. (near "INSTERT" at position 0)
Unrecognized statement type. (near "INTO" at position 8)
Zapytanie SQL:

INSTERT INTO oceny ( polski, matematyka, angielski, niemiecki, wf, informatyka, fizyka, biologia, historia, religia, technika, chemia, geografia) VALUES ($b2, '$b3', '$b4', '$b5', '$b6', '$b7', '$b8', '$b9', '$b10', '$b11', '$b12', '$b13', '$b14') WHERE id_ucznia LIKE.$i

MySQL zwrócił komunikat: Dokumentacja

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSTERT INTO oceny ( polski, matematyka, angielski, niemiecki, wf, informatyka, ' at line 1
arturpiotrowski
czy insert into robi się z WHERE ?
co jest pod zmienną $link?
jak chcesz edytować to zrób update a nie insert
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.