Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL]Eydcja oraz dodawanie
Jarek099
post 13.02.2010, 19:57:22
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Witam mam taki kod :
  1. <HTML LANG="pl">
  2. <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  4. <?
  5. include 'dial.php'; //
  6.  
  7. $mysql = mysql_connect($host, $user, $password);
  8. mysql_select_db($baza, $mysql);
  9. $zapytanie= "SELECT * FROM `tabelka` ORDER BY id DESC LIMIT 0,10";
  10. $query=mysql_query($zapytanie);
  11.  
  12. echo'<table width="800" border="0" align="center">
  13. <tr>
  14. <td width="200" align="center">Gospodarz</td><td width="200" align="center">Gość</td> <td width="80" align="center">Wynik</td></tr>';
  15.  
  16. while($row=mysql_fetch_array($query)){
  17. $gospodarz = $row['1'];
  18. $gosc = $row['2'];
  19. $wynik = $row['3'];
  20. $wynik2 = $row['4'];
  21.  
  22. echo'<tr>
  23. <td width="50" align="center"><input type="text" name="nazwa" size="30" value="' . $gospodarz . '" /></td> <td width="225" align="center"><input type="text" name="nazwa" size="30" value="' . $gosc . '"/></td> <td width="225" align="center"><input type="text" name="nazwa" maxlength="2" size="3" value="' . $wynik . '" />&nbsp;:&nbsp;<input type="text" name="nazwa" size="3" maxlength="2" value="'. $wynik2 .'" /></td><td><button type="submit">zmien</buton></td>
  24. </tr>
  25.  
  26. ';
  27. }
  28.  
  29. </form>
  30. </table>";
  31. ?>


Mianowicie chciał bym zrobić tak by na podstawie tego kodu mógł bym dodawć do MySqla przez formularz .php i bym mógł edytować .
U mnie w książce niestety nie ma napiasne jak to uczynić .
Więc pytam sie tutaj czy znacie jakis tuturial albo wiecie jak cos takieg napisać
Go to the top of the page
+Quote Post
potreb
post 13.02.2010, 21:39:17
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


To poszukaj na forum, dodawanie i edycja rekordów.


--------------------

Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 11:24:28
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Gdy robiłem przy funkcji insert into tabela values ( itd... ) to mi to nie działało ...
A na forum nie moge tego znaleśc
Go to the top of the page
+Quote Post
altruista2
post 14.02.2010, 11:48:02
Post #4





Grupa: Zarejestrowani
Postów: 127
Pomógł: 32
Dołączył: 8.02.2010

Ostrzeżenie: (0%)
-----


Wstawianie rekordów:
  1. mysql_query("INSERT INTO Tabela (ID, Klucz, Wartosc) VALUES (1, 'Ulubione forum', 'forum.php.pl')");


Edycja rekordow:
  1. mysql_query("UPDATE Tabela SET Klucz='Najgorsze forum', Wartosc='forum.php.pl' WHERE ID=1");


--------------------
Jeśli Ci pomogłem kliknij pomógł. W ten sposób temat zaświeci się na żółto i użytkownicy którzy pomagają nie będą musieli niepotrzebnie klikać. Dziękuję.

"Pomaganie"
Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 12:31:26
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Mój formularz wygląda tak :

  1.  
  2. <form action="dodaj1.php" method="post">
  3.  
  4. Gospodarze: <input type=text name=gospodarze maxlength=30 size=30><br><br>
  5. Goscie: <input type=text name=goscie maxlength=30 size=30><br><br>
  6. Wynik: <input type=text name=wynik maxlength=3 size=3><br><br>
  7. Wynikk:<input type=text name=wynikk maxlength=3 size=3><br><br><br>
  8.  
  9. <input type=submit value="Wstaw do bazy">
  10. </form>


A plik dodaj1.php wygląda tak :

  1. <?
  2. if (!$gospodarze || !$goscie || !$wynik|| !$wynikk)
  3.  
  4. {
  5. print "Nie zostały wypełnione wszystkie pola";
  6. }
  7.  
  8. $gospodarze = addslashes($gospodarze);
  9. $goscie = addslashes($goscie);
  10. $wynik = addslashes($wynik);
  11. $wynikk = addslashes($wynikk);
  12.  
  13. @$db = mysql_pconnect("localhost", "root", "krasnal");
  14. if (!$db)
  15. {
  16. print "Nie można nawiązać połączenia z bazą danych";
  17. }
  18.  
  19. mysql_select_db("tabelka");
  20.  
  21. $query = "insert into produkty values ('".$gospodarze."', '".$goscie."', '".$wynik."', '".$wynikk."')";
  22. $result = mysql_query($query);
  23.  
  24. if ($result)
  25. print "Towar <b>".$nazwaproduktu."</b> został dodany do bazy danych.";
  26. else { print "W bazie istnieje już produkt o tym numerze."; }
  27.  
  28. ?>


Tak to u mnie wygląda ale nic nie dodaje do bazy danych :|
Wiecie co jest źle ?
Go to the top of the page
+Quote Post
altruista2
post 14.02.2010, 12:41:31
Post #6





Grupa: Zarejestrowani
Postów: 127
Pomógł: 32
Dołączył: 8.02.2010

Ostrzeżenie: (0%)
-----


Czytaj ze zrozumieniem... Napisałem Wstawianie rekordów:
  1. mysql_query("INSERT INTO Tabela (ID, Klucz, Wartosc) VALUES (1, 'Ulubione forum', 'forum.php.pl')");

A ty zrobiłeś tak:
  1. $query = "insert into produkty values ('".$gospodarze."', '".$goscie."', '".$wynik."', '".$wynikk."')";


Sam musisz zrozumieć co robisz źle snitch.gif

Ten post edytował altruista2 14.02.2010, 12:41:58


--------------------
Jeśli Ci pomogłem kliknij pomógł. W ten sposób temat zaświeci się na żółto i użytkownicy którzy pomagają nie będą musieli niepotrzebnie klikać. Dziękuję.

"Pomaganie"
Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 13:07:03
Post #7





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Cytat(altruista2 @ 14.02.2010, 12:41:31 ) *
Czytaj ze zrozumieniem... Napisałem Wstawianie rekordów:
  1. mysql_query("INSERT INTO Tabela (ID, Klucz, Wartosc) VALUES (1, 'Ulubione forum', 'forum.php.pl')");

A ty zrobiłeś tak:
  1. $query = "insert into produkty values ('".$gospodarze."', '".$goscie."', '".$wynik."', '".$wynikk."')";


Sam musisz zrozumieć co robisz źle snitch.gif


No ok ale ty stosujesz takie coś :
  1. mysql_query("INSERT INTO Tabela (ID, Klucz, Wartosc) VALUES (1, 'Ulubione forum', 'forum.php.pl')");

to co to jest te ID, Klucz, Wartość i do czego odwołuje sie 1,Ulubione itd. ?
Bo nie kumam
Go to the top of the page
+Quote Post
altruista2
post 14.02.2010, 13:18:46
Post #8





Grupa: Zarejestrowani
Postów: 127
Pomógł: 32
Dołączył: 8.02.2010

Ostrzeżenie: (0%)
-----


Nazwy kolumn w tabeli. Czyli stawiam że powinieneś mieć:
  1. $query = "insert into produkty (gospodarze, goscie, wynik, wynikk) values ('".$gospodarze."', '".$goscie."', '".$wynik."', '".$wynikk."')";

gdzie
Cytat
...odukty (gospodarze, goscie, wynik, wynikk) valu...

to nazwy kolumn w tabeli produkty

Składnia:
  1. INSERT INTO
  2. Nazwa_tabeli
  3. (Kolumna1, Kolumna2, Kolumna3)
  4. VALUES
  5. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3')

W ten sposób możesz też dodawać parę wierszy, np.:
  1. INSERT INTO
  2. Nazwa_tabeli
  3. (Kolumna1, Kolumna2, Kolumna3)
  4. VALUES
  5. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  6. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  7. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  8. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  9. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  10. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  11. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  12. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3'),
  13. ('WartoscKolumny1','WartoscKolumny2','WartoscKolumny3')



Ten post edytował altruista2 14.02.2010, 13:21:56


--------------------
Jeśli Ci pomogłem kliknij pomógł. W ten sposób temat zaświeci się na żółto i użytkownicy którzy pomagają nie będą musieli niepotrzebnie klikać. Dziękuję.

"Pomaganie"
Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 14:31:34
Post #9





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Zrobiłem tak i dodaje do bazy danych ...

  1. <?
  2. include ('dial.php');
  3.  
  4.  
  5. $query = "insert into tabelka (GOSPODARZ, GOSC, WYNIK, WYNIKK) values ('1', '2', '3', '4')";
  6. $result = mysql_query($query);
  7. {
  8. $gospodarz = $row['1'];
  9. $gosc = $row['2'];
  10. $wynik = $row['3'];
  11. $wynik2 = $row['4'];
  12.  
  13. echo (' <form action="dodajemy.php" method="post"> ');
  14.  
  15. echo ('
  16. Gospodarze: <input type=text name=1 maxlength=30 size=30><br><br>
  17. Goscie: <input type=text name=2 maxlength=30 size=30><br><br>
  18. Wynik: <input type=text name=3 maxlength=3 size=3><br><br>
  19. Wynikk:<input type=text name=4 maxlength=3 size=3><br><br><br>
  20. <input type=submit value="Wstaw do bazy"> ');
  21.  
  22.  
  23. echo ('</form>');
  24.  
  25. }
  26. ?>


z tym że dodaje mi do bazy to co mam pogrubione :

$query = "insert into tabelka (GOSPODARZ, GOSC, WYNIK, WYNIKK) values ('1', '2', '3', '4')";

a gdy dałem to :

1.
$query = "insert into produkty (gospodarze, goscie, wynik, wynikk) values ('".$gospodarze."', '".$goscie."', '".$wynik."', '".$wynikk."')";

to tworzyło mi puste wyniki w bazie danych...
I co zrobić ?

Ten post edytował Jarek099 14.02.2010, 14:33:00
Go to the top of the page
+Quote Post
altruista2
post 14.02.2010, 15:39:46
Post #10





Grupa: Zarejestrowani
Postów: 127
Pomógł: 32
Dołączył: 8.02.2010

Ostrzeżenie: (0%)
-----


Bo zmienne $gospodarze, $goscie, $wynik, $wynikk były puste... Musisz dodać przed zapytaniem:
  1. $gospodarze = $_POST['gospodarze'];
  2. $goscie = $_POST['goscie'];
  3. $wynik = $_POST['wynik'];
  4. $wynikk = $_POST['wynikk'];


Z tym że musisz pamiętać o zabezpieczeniu się:
Temat: SQL Injection Insertion

Ten post edytował altruista2 14.02.2010, 15:51:09


--------------------
Jeśli Ci pomogłem kliknij pomógł. W ten sposób temat zaświeci się na żółto i użytkownicy którzy pomagają nie będą musieli niepotrzebnie klikać. Dziękuję.

"Pomaganie"
Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 16:17:52
Post #11





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


No ok całość tego pliku wyszła mi tak :
  1. <?
  2. include ('dial.php');
  3. $gospodarze = $_POST['gospodarze'];
  4. $goscie = $_POST['goscie'];
  5. $wynik = $_POST['wynik'];
  6. $wynikk = $_POST['wynikk'];
  7.  
  8. $query = "insert into tabelka (gospodarze, goscie, wynik, wynikk) values ('".$gospodarze."', '".$goscie."', '".$wynik."', '".$wynikk."')";
  9. $result = mysql_query($query);
  10.  
  11. {
  12. echo (' <form action="dodajemy.php" method="post"> ');
  13. echo ('
  14. Gospodarze: <input type=text name=gospodarze maxlength=30 size=30><br><br>
  15. Goscie: <input type=text name=goscie maxlength=30 size=30><br><br>
  16. Wynik: <input type=text name=wynik maxlength=3 size=3><br><br>
  17. Wynikk:<input type=text name=wynikk maxlength=3 size=3><br><br><br>
  18. <input type=submit value="Wstaw do bazy"> ');
  19. echo ('</form>');
  20.  
  21. }
  22. ?>


Z tym że nie dodaje mi tego do bazy danych
Go to the top of the page
+Quote Post
altruista2
post 14.02.2010, 16:25:14
Post #12





Grupa: Zarejestrowani
Postów: 127
Pomógł: 32
Dołączył: 8.02.2010

Ostrzeżenie: (0%)
-----


Za rączkę...

  1. $query = "insert into tabelka (gospodarze, goscie, wynik, wynikk)

Pewnie nazwy kolumn są złe...

Ten post edytował altruista2 14.02.2010, 16:26:49


--------------------
Jeśli Ci pomogłem kliknij pomógł. W ten sposób temat zaświeci się na żółto i użytkownicy którzy pomagają nie będą musieli niepotrzebnie klikać. Dziękuję.

"Pomaganie"
Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 16:36:07
Post #13





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Ok dzięki działa exclamation.gif!!
Go to the top of the page
+Quote Post
lnn
post 14.02.2010, 17:07:52
Post #14





Grupa: Zarejestrowani
Postów: 361
Pomógł: 11
Dołączył: 17.12.2008
Skąd: LU

Ostrzeżenie: (0%)
-----


a czytales temat zanim zadasz pytanie: http://forum.php.pl/index.php?showtopic=44...t=0&start=0 questionmark.gif nawet sobie nie wyswietliles co moze byc zle mysql_error() i sie glupkowato dopytujesz podstaw ktore sa w kazdym kursie, moze warto byloby najpierw zrozumiec podstawy ? bo widze ze nawet nie wiesz co robisz w skrypcie tylko walisz na pałe z ksiazki
Go to the top of the page
+Quote Post
Jarek099
post 14.02.2010, 17:24:22
Post #15





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 14.01.2010
Skąd: Słupsk

Ostrzeżenie: (0%)
-----


Sie poprostu ucze na przykladach jutro mi przyjdzie 2 ksiązka php i sql ...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 23.05.2024 - 19:21