Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]PHP + MySQL = zapytanie dodawajace dane
Forum PHP.pl > Forum > Przedszkole
SkuterPL
  1. <?php
  2. include("questionsPLUGIN.php");
  3. ?>
  4.  
  5. <html>
  6. <head>
  7. <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
  8. </head>
  9.  
  10. <body>
  11. <form method="POST" action="questionsPLUGIN.php">
  12. <b>Pytanie</b><input type="text" name="pytanie" /><br />
  13. <b>Poprawna odpowiedź</b><input type="text" name="a" /><br />
  14. <b>Odpowiedź B</b><input type="text" name="b" /><br />
  15. <b>Odpowiedź C</b><input type="text" name="c" /><br />
  16. <b>Odpowiedź D</b><input type="text" name="d" /><br />
  17. <b>Kategoria</b>
  18. <select name="kategoria">
  19. <option value="1">UTK</option>
  20. <option value="2">Systemy Operacyjne</option>
  21. <option value="2">Programowanie</option>
  22. <option value="4">Multimedia</option>
  23. </select>
  24. <input type="submit" value="wyslij" name="wyslij" />
  25. </form>
  26. </body>
  27.  
  28. </html>


Tutaj mamy plik do wygladu

  1. <?php
  2. mysql_connect("localhost", "root", "") or
  3. die ("Nie można połączyć się z MySQL");
  4. mysql_select_db("baza") or
  5. die ("Nie można połączyć się z baza");
  6.  
  7. $pytanie = $_POST['pytanie'];
  8. $a = $_POST['a'];
  9. $b = $_POST['b'];
  10. $c = $_POST['c'];
  11. $d = $_POST['d'];
  12. $kategoria = $_POST['kategoria'];
  13.  
  14. if (isset($_POST['wyslij']))
  15. if ((!empty($_POST['pytanie'])) && (!empty($_POST['a'])) && (!empty($_POST['b'])) && (!empty($_POST['c'])) && (!empty($_POST['d'])) && (isset($_POST['kategoria'])) )
  16. //$wynik = mysql_query ("INSERT INTO `egzamin`.`pytania` (`ID`, `PYTANIE`, `A`, `B`, `C`, `D`, `KATEGORIA`, `URL_IMG`) VALUES (NULL, '".$_POST['pytanie']."', '".$_POST['a'].", '".$_POST['b']."', '".$_POST['c']."', '".$_POST['d']."', '123', 'img');");
  17. $wynik = mysql_query ("INSERT INTO `egzamin`.`pytania` (`ID`, `PYTANIE`, `A`, `B`, `C`, `D`, `KATEGORIA`, `URL_IMG`) VALUES (NULL, '$pytanie', '$a', '$b', '$c', '$d', '$kategoria', 'img');");
  18.  
  19. else echo 'nie wypelniłeś wszystkich pól';
  20.  
  21.  
  22.  
  23. ?>


A tutaj kod skryptu.

1. pytanie dlaczego w zapytaniach nie mozna uzywac $_POST... tak jak mam uzyte wyzej zakomentowane? (godzine z tym siedzialem i nie chcialo ruszyc, musialem zmienic na zmienne)

2. Drugi problem to dlaczego jak wybieram z listy rozwijanej to nie wpisuje do bazy tej tresci z listy?

3. Dlaczego pokazuje mi takie bledy:
Cytat
Notice: Undefined index: pytanie in C:\xampp\htdocs\egzamin\questionsPLUGIN.php on line 7

Notice: Undefined index: a in C:\xampp\htdocs\egzamin\questionsPLUGIN.php on line 8

Notice: Undefined index: b in C:\xampp\htdocs\egzamin\questionsPLUGIN.php on line 9

Notice: Undefined index: c in C:\xampp\htdocs\egzamin\questionsPLUGIN.php on line 10

Notice: Undefined index: d in C:\xampp\htdocs\egzamin\questionsPLUGIN.php on line 11

Notice: Undefined index: kategoria in C:\xampp\htdocs\egzamin\questionsPLUGIN.php on line 12


Dzieki za pomoc.

EDIT
Jeden problem chyba rozwiazelem:
Cytat
<select name="kategoria">
<option value="UTK">UTK</option>
<option value="SYS">Systemy Operacyjne</option>
<option value="Pro">Programowanie</option>
<option value="Mul">Multimedia</option>
</select>

I teraz juz wrzuca tresci z value do bazy, wiec jest to czego oczekiwalem, tylko czy to dobry sposob?
Spawnm
Operacje na post daj w bloczek:
  1. if($_POST){
  2. //operacje na przesłanym formie
  3. }


Poczytaj o mysql_real_escape_string
SkuterPL
  1. <?php
  2. mysql_connect("localhost", "root", "") or
  3. die ("Nie można połączyć się z MySQL");
  4. mysql_select_db("baza") or
  5. die ("Nie można połączyć się z baza");
  6.  
  7. $pytanie = $_POST['pytanie'];
  8. $a = $_POST['a'];
  9. $b = $_POST['b'];
  10. $c = $_POST['c'];
  11. $d = $_POST['d'];
  12. $kategoria = $_POST['kategoria'];
  13.  
  14. if (isset($_POST['wyslij'])) {
  15. if ((!empty($_POST['pytanie'])) && (!empty($_POST['a'])) && (!empty($_POST['b'])) && (!empty($_POST['c'])) && (!empty($_POST['d'])) && (isset($_POST['kategoria'])) )
  16. {//$wynik = mysql_query ("INSERT INTO `egzamin`.`pytania` (`ID`, `PYTANIE`, `A`, `B`, `C`, `D`, `KATEGORIA`, `URL_IMG`) VALUES (NULL, '".$_POST['pytanie']."', '".$_POST['a'].", '".$_POST['b']."', '".$_POST['c']."', '".$_POST['d']."', '123', 'img');");
  17. $wynik = mysql_query ("INSERT INTO `egzamin`.`pytania` (`ID`, `PYTANIE`, `A`, `B`, `C`, `D`, `KATEGORIA`, `URL_IMG`) VALUES (NULL, '$pytanie', '$a', '$b', '$c', '$d', '$kategoria', 'img');");
  18. }
  19. else echo 'nie wypelniłeś wszystkich pól';
  20. }
  21.  
  22.  
  23. ?>


Dodalem klamry, ale dalej bledy pokazuje.
nospor
O to:
$pytanie = $_POST['pytanie'];

$a = $_POST['a'];

$b = $_POST['b'];

$c = $_POST['c'];

$d = $_POST['d'];

$kategoria = $_POST['kategoria'];
ma byc w bloczku z postem....
SkuterPL
  1. <?php
  2. mysql_connect("localhost", "root", "") or
  3. die ("Nie można połączyć się z MySQL");
  4. mysql_select_db("baza") or
  5. die ("Nie można połączyć się z baza");
  6.  
  7.  
  8.  
  9. if (isset($_POST['wyslij'])) {
  10. $pytanie = $_POST['pytanie'];
  11. $a = $_POST['a'];
  12. $b = $_POST['b'];
  13. $c = $_POST['c'];
  14. $d = $_POST['d'];
  15. $kategoria = $_POST['kategoria'];
  16. if ((!empty($_POST['pytanie'])) && (!empty($_POST['a'])) && (!empty($_POST['b'])) && (!empty($_POST['c'])) && (!empty($_POST['d'])) && (isset($_POST['kategoria'])) )
  17. {//$wynik = mysql_query ("INSERT INTO `egzamin`.`pytania` (`ID`, `PYTANIE`, `A`, `B`, `C`, `D`, `KATEGORIA`, `URL_IMG`) VALUES (NULL, '".$_POST['pytanie']."', '".$_POST['a'].", '".$_POST['b']."', '".$_POST['c']."', '".$_POST['d']."', '123', 'img');");
  18. $wynik = mysql_query ("INSERT INTO `egzamin`.`pytania` (`ID`, `PYTANIE`, `A`, `B`, `C`, `D`, `KATEGORIA`, `URL_IMG`) VALUES (NULL, '$pytanie', '$a', '$b', '$c', '$d', '$kategoria', 'img');");
  19. }
  20. else echo 'nie wypelniłeś wszystkich pól';
  21. }
  22.  
  23.  
  24. ?>


Czyli tak?
BO teraz bledow nie ma smile.gif

A mozecie wyjasnic dlaczego musi byc po IFie?
nospor
Może dlatego, że dopiero wtedy są dane w POST?questionmark.gif
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.