![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 76 Pomógł: 0 Dołączył: 13.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam formularz
Cytat <html> <head> <title> Dodawanie rekordów </title></head> <body> <form method="POST" action="dodaj.php"> Podaj nazwe: <input type="text" size="30" name="name"><br> Podaj hp: <input type="text" size="40" name="hp"><br> Podaj exp: <input type="text" size="40" name="exp"><br> Podaj summon: <input type="text" size="40" name="summon"><br> Podaj convince: <input type="text" size="40" name="convince"><br> Podaj loot: <select name="loot" multiple="multiple" size="8"> <?php mysql_connect('localhost', 'root', '') or die('Nie można się połączyć: ' . mysql_error()); mysql_select_db('haha'); $result = mysql_query("SELECT name,namelink FROM monsters"); if(mysql_num_rows($result) > 0) { while($row123 = mysql_fetch_assoc($result)) { echo '<option>'.$row123['name'].'</option>'; } } ?> </select> <br> Podaj wsytepowanie: <input type="text" size="40" name="occupation"><br> Podaj opis: <input type="text" size="40" name="opis"><br> Podaj odgłos: <input type="text" size="40" name="voice"><br> <input type="submit" value="wyślij!"> </form> </body> </html> Chodzi o to , żeby formularz pokazywał w "tabelce" select wszystkie nazwy potworów .. i gdy dam wyślij zapisało rekord w bazie Gdy zamiast tego skryptu php dodam to co jest w innych wszystko gra.. a jak zmienię na tak jak jest teraz nie zapisuje się . Mógłby mi ktoś pomóc ? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 194 Pomógł: 26 Dołączył: 9.01.2011 Skąd: /dev/null Ostrzeżenie: (0%) ![]() ![]() |
Pokaż treść pliku dodaj.php
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 76 Pomógł: 0 Dołączył: 13.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Cytat <?php
if($name and $hp and $exp and $summon and $convince and $loot and $occupation and $opis and $voice) { // łączymy się z bazą danych $connection = @mysql_connect('localhost', 'root', '') or die('Brak połączenia z serwerem MySQL'); $db = @mysql_select_db('haha', $connection) or die('Nie mogę połączyć się z bazą danych'); // dodajemy rekord do bazy $ins = @mysql_query("INSERT INTO monsters SET name='$name', hp='$hp', exp='$exp', summon='$summon', convince='$convince', loot='$loot', occupation='$occupation', opis='$opis', voice='$voice'"); if($ins) echo "Rekord został dodany poprawnie"; else echo "Błąd nie udało się dodać nowego rekordu"; mysql_close($connection); } ?> |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 194 Pomógł: 26 Dołączył: 9.01.2011 Skąd: /dev/null Ostrzeżenie: (0%) ![]() ![]() |
Nie zapisuje, bo nieprawidłowo odwołujesz się do zmiennych (i najprawdopodobniej nie masz włączonego register_globals w PHP - i bardzo dobrze).
Jako, że przesyłasz formularz metodą POST, musisz odwoływać się do zmiennych z tablicy $_POST. Czyli zamiast $name musi być $_POST['name'] itd. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 76 Pomógł: 0 Dołączył: 13.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
hmmm zrobiłem tak, że
Cytat { echo '<option name="loot">'.$row123['name'].'</option>'; } } i teraz dodaje do bazy tylko że jedną nazwę a nie wszystkie które zaznacze :/ |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 248 Pomógł: 31 Dołączył: 14.12.2010 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
zamien
na będziesz miał tablicę z danymi tylko ją odpowiednio przetwórz i zapisz do bazy -------------------- Jeżeli pomogłem kliknij "Pomógł" :)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 76 Pomógł: 0 Dołączył: 13.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ale pojawiają się w tabelce nazwy .... tylko że gdy wybiorę więcej niż jedną to do bazy i tak zapisuje się tylko 1 :/
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 08:41 |