Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [sql]Tworzenie bazy, dodawanie rekordów, wyświetlanie
Forum PHP.pl > Forum > Przedszkole
CryWolf
  1. <?php
  2.  
  3.  
  4. $sql = mysql_connect (xxxx);
  5. $baza = mysql_select_db(muonline_mysql);
  6.  
  7. $tabela = "CREATE TABLE via (
  8. id char(3) NOT NULL, 
  9. nick char(30), 
  10. wiek char(3), 
  11. punkty char(3), 
  12. PRIMARY KEY(id))";
  13.  
  14. $rekordy = "INSERT INTO via (nick, wiek, punkty) VALUES (CryWolf, hej, lol)";
  15.  
  16.  
  17. mysql_query($baza);
  18. mysql_query($tabela);
  19. mysql_query($rekordy);
  20.  
  21.  
  22.  
  23. $select = "SELECT * FROM via";
  24. $wykonaj = mysql_query($select);
  25. while($wiersz = mysql_fetch_array($wykonaj))
  26. {
  27. print "Pole pierwsze".$wiersz['nick']."<br>";
  28. print "Pole drugie".$wiersz['wiek']."<br>";
  29. print "Pole trzecie".$wiersz['punkty']."<br>";
  30. }
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39. ?>


Tabela tworzy się, lecz nie dodają się rekordy. Jaki jest powód. Może coś z typami pól, albo z ID.
Z góry dzięki
nospor
  1. <?php
  2.  
  3.  
  4. $sql = mysql_connect (xxxx);
  5. $baza = mysql_select_db(muonline_mysql);
  6.  
  7. $tabela = "CREATE TABLE via (
  8. id char(3) NOT NULL, 
  9. nick char(30), 
  10. wiek char(3), 
  11. punkty char(3), 
  12. PRIMARY KEY(id))";
  13.  
  14. $rekordy = "INSERT INTO via (nick, wiek, punkty) VALUES ('CryWolf', 'hej', 'lol')";
  15.  
  16.  
  17.  
  18. mysql_query($tabela);
  19. mysql_query($rekordy);
  20.  
  21.  
  22.  
  23. $select = "SELECT * FROM via";
  24. $wykonaj = mysql_query($select);
  25. while($wiersz = mysql_fetch_array($wykonaj))
  26. {
  27. print "Pole pierwsze".$wiersz['nick']."<br>";
  28. print "Pole drugie".$wiersz['wiek']."<br>";
  29. print "Pole trzecie".$wiersz['punkty']."<br>";
  30. }
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37. ?>
CryWolf
  1. <?php
  2.  
  3. $sql = mysql_connect (localhost, muonline, nuker99999);
  4.  
  5. $baza = mysql_select_db(muonline_mysql);
  6. mysql_query($baza);
  7.  
  8. $tabela = "CREATE TABLE via (
  9. id int NOT NULL AUTO_INCREMENT, 
  10. nick char(30), 
  11. wiek int(3), 
  12. punkty int(3), 
  13. PRIMARY KEY(id))";
  14. mysql_query($tabela);
  15.  
  16.  
  17.  
  18. if ($_POST[tekst] == TRUE) {
  19.  
  20.  
  21.  
  22. switch ($_POST[tekst])
  23.  
  24. {
  25.  
  26. case "jeden":
  27.  
  28.  
  29. $rekordy = 'INSERT INTO IF NOT EXISTS via (nick, wiek, punkty) VALUES ("CryWolf", "14", "10")';
  30. mysql_query($rekordy);
  31. $rekordy2 = "UPDATE via SET punkty= punkty + 1 WHERE wiek='14'";
  32. mysql_query($rekordy2);
  33. break;
  34.  
  35. $select = "SELECT * FROM via";
  36. $wykonaj = mysql_query($select);
  37. while($wiersz = mysql_fetch_array($wykonaj))
  38. {
  39. print "Nick".$wiersz['nick']."<br>";
  40. print "Wiek".$wiersz['wiek']."<br>";
  41. print "Punkty".$wiersz['punkty']."<br>";
  42. }
  43.  
  44.  
  45.  
  46. case "dwa":
  47.  
  48. $rekordy = 'INSERT INTO IF NOT EXISTS via (nick, wiek, punkty) VALUES ("CryWolf", "14", "10")';
  49. mysql_query($rekordy);
  50. $rekordy2 = "UPDATE via SET punkty= punkty - 1 WHERE wiek='14'";
  51. mysql_query($rekordy2);
  52. break;
  53.  
  54.  
  55. $select = "SELECT * FROM via";
  56. $wykonaj = mysql_query($select);
  57. while($wiersz = mysql_fetch_array($wykonaj))
  58. {
  59. print "Nick".$wiersz['nick']."<br>";
  60. print "Wiek".$wiersz['wiek']."<br>";
  61. print "Punkty".$wiersz['punkty']."<br>";
  62. }
  63.  
  64. }
  65.  
  66. }
  67.  
  68. else {
  69.  
  70. echo "<FORM ACTION="index.php" METHOD="post">
  71.  
  72. Wybierz coś: <SELECT NAME="tekst">
  73.  
  74. <OPTION VALUE="jeden">jeden</OPTION>
  75.  
  76. <OPTION VALUE="dwa">dwa</OPTION>
  77.  
  78.  
  79.  
  80. </SELECT><br />
  81.  
  82. <INPUT TYPE="submit" VALUE="Zobacz co wpisa&#322;em">
  83.  
  84. </FORM>";
  85.  
  86. }
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93. mysql_close($sql);
  94.  
  95.  
  96. ?>





Gdy cześć kodu poniżej umieszczę poza instrukcją warunkową, wszystko działa, lecz gdy jest w środku nic się potem nie wyświetla.

  1. <?php
  2. $select = "SELECT * FROM via";
  3. $wykonaj = mysql_query($select);
  4. while($wiersz = mysql_fetch_array($wykonaj))
  5. {
  6. print "Nick".$wiersz['nick']."<br>";
  7. print "Wiek".$wiersz['wiek']."<br>";
  8. print "Punkty".$wiersz['punkty']."<br>";
  9. ?>


P.S.
Pola Nick,Wiek,Punkty były wcześniej już utworzone i działały z częścią kodu gdy była poza instrukcją warunkową.

Z góry dzięki

Tu można sprawdzić kod z wcześniej bez instrukcji warunkowej, wystarczy tylko odświezać.
http://www.muonline.nspace.pl/mysql/index2.php
A tu link z teraz co przycisk "jeden" dodaje wartość o 1 a "dwa" odejmuje:
http://www.muonline.nspace.pl/mysql/index.php

Czemu nikt nie pomoże?
nospor
zajrzyj do manuala i przeczytaj sobie co robi break, gdy znajdzie się w switchu tongue.gif
Powinno już ci zarowa swiecic dawno, przeciez widac, ze jesli wykonujesz ten swoj formularz, to rekord zmienia swoje dane, tyle tylko ze nie jest on wyswietlany.
CryWolf
Dobra, napisałem taki kodzik, lecz nie dodają się rekordy jak są w tym formularzu. Jestem kompletnie w tym nowy, więc proszę o pomoc i jakieś wytłumaczenie. Skrypt: Najpierw powinno przypisywać się trzy wartości do zmiennych, które potem mają zostać dodane do bazy i potem wyświetlone na stronie. Coś jednak nie działa sad.gif

  1. <?php
  2.  
  3. $sql = mysql_connect (xxx);
  4.  
  5. $baza = mysql_select_db(xxx);
  6. mysql_query($baza);
  7.  
  8.  
  9. $tabela = "CREATE TABLE IF NOT EXISTS gracz (
  10. id int NOT NULL AUTO_INCREMENT, 
  11. nick char(30), 
  12. wiek int(3), 
  13. punkty int(3), 
  14. PRIMARY KEY(id))";
  15. mysql_query($tabela);
  16.  
  17.  
  18.  
  19.  
  20. if ($_GET[gracznick] == TRUE && $_GET[graczwiek] == TRUE && $_GET[graczpunkty] == TRUE) {
  21.  
  22.  
  23. $_GET[gracznick] = $zmiennanick;
  24. $_GET[graczwiek] = $zmiennawiek;
  25. $_GET[graczpunkty] = $zmiennapunkty; 
  26.  
  27.  
  28.  
  29. $rekordy = 'INSERT INTO IF NOT EXISTS gracz (nick, wiek, punkty) VALUES ($zmiennanick, $zmiennawiek, $zmiennapunkty)';
  30. mysql_query($rekordy);
  31.  
  32.  
  33. $select = "SELECT * FROM gracz";
  34. $wykonaj = mysql_query($select);
  35. while($wiersz = mysql_fetch_array($wykonaj))
  36. {
  37. print "Nick ".$wiersz['nick']."<br>";
  38. print "Wiek ".$wiersz['wiek']."<br>";
  39. print "Punkty ".$wiersz['punkty']."<br>";
  40. }
  41. }
  42.  
  43. else { echo "
  44.  
  45.  
  46. <FORM ACTION="index.php" METHOD="get">
  47.  
  48. Wpisz coś: <INPUT TYPE="text" NAME="gracznick"><br />
  49.  
  50.  
  51.  
  52.  
  53. <FORM ACTION="index.php" METHOD="get">
  54.  
  55. Wpisz coś: <INPUT TYPE="text" NAME="graczwiek"><br />
  56.  
  57.  
  58.  
  59. <FORM ACTION="index.php" METHOD="get">
  60.  
  61. Wpisz coś: <INPUT TYPE="text" NAME="graczpunkty"><br />
  62.  
  63. <INPUT TYPE="submit" VALUE="Zobacz co wpisałem">
  64.  
  65. </FORM>";
  66.  
  67. }
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77. ?>


Pozdrawiam
nospor
  1. <?php
  2. $_GET[gracznick] = $zmiennanick;
  3. $_GET[graczwiek] = $zmiennawiek;
  4. $_GET[graczpunkty] = $zmiennapunkty;
  5. ?>

Ma byc na odwrot. PRzciez to do zmiennej masz przypisac wartosc z geta a nie na odwrot....
I zacznij wkoncu pisac tak: $tablica['index'] a nie $tablica[index].
Wlacz tez wyswietlanie bledow to zobaczysz jakie masz smieci:
  1. <?php
  2. error_reporting(E_ALL);ini_set('display_errors','On');
  3. ?>


Pozatym w zapytaniu wartosci tekstowe bierze sie w apostrofy
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.