Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Połącznie z SQL i pobieranie z tabeli do tabeli
Neyo
post 23.04.2012, 16:22:26
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 23.04.2012

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


Witam, ostatnio zacząłem naukę z PHP i bazą danych SQL, ale wciąż nie mogę połączyć się po przez PHP z bazą danych MySQL i wybrać dane wpisując je do tabeli w rodzaju
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['surname'] . "</td>";
echo "<td>" . $row['weight'] . "</td>";
echo "<td>" . $row['height'] . "</td>";

nie wiem jak tych danych wprowadzić do tabeli w HTML jakby ktoś by mógł mi to wyjaśnić byłbym bardzo wdzięczny.
Go to the top of the page
+Quote Post
viking
post 23.04.2012, 17:36:46
Post #2





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


A z czym konkretnie masz problem? Jaka jest struktura bazy? Sugeruję użyć PDO skoro i tak zaczynasz naukę.
http://tworzenie-stron-www.org/article/10/...luge_baz_danych

Ten post edytował viking 23.04.2012, 17:37:00


--------------------
Go to the top of the page
+Quote Post
Neyo
post 24.04.2012, 14:34:31
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 23.04.2012

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


chcę z bazy danych pobrać cztery kolumny imię, nazwisko, wiek i waga i umieścić je w tabeli w <tbody>(dane z bazy danych)</tbody> używając php Ajaxa lub jQuery.
Go to the top of the page
+Quote Post
viking
post 24.04.2012, 15:41:09
Post #4





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


W takim razie kod który wkleiłeś wygląda dobrze. Chcesz więcej informacji napisz porządnie temat smile.gif


--------------------
Go to the top of the page
+Quote Post
Neyo
post 24.04.2012, 19:41:47
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 23.04.2012

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


  1. <?php
  2. $connect = mysql_connect("host", "myuser", "mypass")
  3. mysql_select_db("mydb");
  4. $quey1="SELECT imie, nazwisko, waga, wzrost FROM mydb";
  5. $result=mysql_query($quey1) or die(mysql_error());
  6. while($row=mysql_fetch_array($result)){
  7. echo "<tr><td>";
  8. echo $row['imie'];
  9. echo "</td><td>";
  10. echo $row['nazwisko'];
  11. echo "</td><td>";
  12. echo $row['waga'];
  13. echo "</td><td>";
  14. echo $row['wzrost'];
  15. echo "</td></tr>";
  16. }
  17. ?>


  1. <!doctype html>
  2. <head>
  3. table{border: 1px solid black;}
  4. th{background-color:maroon; color:white;}
  5. input{background-color:firebrick; border:none;}
  6. </style>
  7. <script type="text/javascript" src="jquery.min.js"></script>
  8. $(function(){
  9.  
  10. });
  11. </script>
  12. </head>
  13. <body>
  14. <div class="container">
  15. <table border="1" cellspacing="0" cellpadding="5px">
  16. <tr>
  17. <th><label for="name">Imię</label><input type="text" name="name" id="name"/></th>
  18. <th><label for="surname">Nazwisko</label><input type="text" name="surname" id="surname"/></th>
  19. <th><label for="weight">Waga</label><input type="text" name="weight" id="weight"/></th>
  20. <th><label for="height">Wzrost</label><input type="text" name="height" id="height"/></th>
  21. </tr>
  22.  
  23. </tbody>
  24. </table>
  25. </div>
  26. </body>
  27. </html>


w php wszystko mam napisane na tip-top, ale niech ktoś mi powie jak mam napisać skrypt GET, aby w tbody wyświetliły się echo'a
Go to the top of the page
+Quote Post
neosatan
post 24.04.2012, 22:04:15
Post #6





Grupa: Zarejestrowani
Postów: 79
Pomógł: 2
Dołączył: 29.04.2009
Skąd: wrocław

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


skrypt GET? za nic na świecie nie wiem co to skrypt GET?

Podejrzewam, że chcesz by to co echujesz było w tbody, wiec po prostu zamiast to echować to wrzuć do zmiennej i wyrzuć zmienną za pomocą <?php echo $tbody ?> (to wklejasz po między znaczniki <table></table>, a kod php musi być wykonany wcześniej) możesz też od razu dorzucić obsługę zdarzenia, gdy nie ma nic z bazy, oraz powielanie nagłówków co 100 stron, lub paginacje (btw. niech mi ktoś wyjaśni genezę tego słowa...)

a tak swoją drogą, to po co Ci w tbody input, skoro nie masz form? jak chcesz za pomocą tabelek robić layout, to zaraz narobisz sobie wrogów tutaj, użyj div do layoutu, lepiej się sprawdzają.

co do Twojego cellspacing w HTML5

StackOverflow


PDO, a nie funkcje mysql_*. Jest łatwiejsze i funkcje mysql_* idą w zapomnienie powoli. Jak mnie pamięć nie myli to już społeczność je deprecjonuje (a przynajmniej przygotowuje się), co i tak może potrwać jeszcze kilka lat...


Jak chcesz to zrobić za pomocą AJAXa z jQuery, to np.

$.post('ajax.php', {}, function(data){
$('#id_tabeli').htm(data);
});



Ten post edytował neosatan 24.04.2012, 22:16:39


--------------------
C/C++ (ucze się...), PHP (ucze się...), SMARTY(ucze się...), PYTHON(ucze się...), C#(uczę się...), PERL(uczę się...), JavaScript(uczę się...), JAVA(będą mi kazali się uczyć...)... Ja się głównie uczę...
Go to the top of the page
+Quote Post
viking
post 25.04.2012, 05:21:28
Post #7





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Jeśli chcesz to za pomocą jQuery to możesz wykorzystać http://api.jquery.com/load/ . Plik do którego wysyłasz request zwyczajnie zwraca właściwą treść. Możesz też spróbować JSON ale nie wiem czy przy tym poziomie wiedzy dasz sobie radę z zapisem i później wybraniem danym w jQuery. Najlepszym oczywiście rozwiązaniem jest zrobić całość w PHP i to co napisałeś w pierwszym poście wstawić do kodu generującego tabelę.

@neosatan:
W HTML5 input poza form jest konstrukcją 100% poprawną i w pewnych sytuacjach bardzo pożądaną.


--------------------
Go to the top of the page
+Quote Post
neosatan
post 25.04.2012, 15:45:33
Post #8





Grupa: Zarejestrowani
Postów: 79
Pomógł: 2
Dołączył: 29.04.2009
Skąd: wrocław

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


@viking:
Hmmm... A do czego? Rozumiem, że można to wykorzystać do wprowadzania danych za pomocą AJAXa, FileAp itp, z tym, że autor trochę niezrozumiale napisał temat dlatego pytam się do czego ten input tam jest. To czy to konstrukcja pożądana czy nie jest kwestią wykorzystania kodu niżeli specyfikacji HTML5, jednak jestem ciekaw po co to tam jest, ponieważ nie widzę w kodzie motywów wykorzystania tego inputu. Nie rozumiem dokładnie po co ten input tam jest i czy autor chce za pomocą AJAXa wrzucić kod z tych inputów i go ponownie wyświetlić, czy może tylko tak o to tam wykorzystuje, czy może gdzieś tam zapomniał jeszcze wrzucić formularza, czy bóg wie co jeszcze. Sposobów wykorzystania jest pewnie multum takiego kodu, lecz dokładnie nie wiem jakie jest zamierzenie, dlatego też napisałem dwa rozwiązania + kilka uwag odnośnie HTML5, mysql. Nie ma sensu, by nabierał złych nawyków podczas nauki, więc zawsze lepiej się zapytać co chce osiągnąć.

Jak chcesz wykorzystać ten input tam do przesłania na serwer, to możesz wykorzystać to tak

$.post('ajax.php', {name: $('#id_tabeli input[name=name']').val(), surname: $('#id_tabeli input[name=surname']').val(), weight: $('#id_tabeli input[name=weight']').val(), height: $('#id_tabeli input[name=height']').val()}, function(data){
$('#id_tabeli').htm(data);
});


Tym sumptem, masz te dane w pliku php dostępne pod tabelą $_POST, jak zmienisz $.post() na $.get() to będą w $_GET. Natomiast jak chcesz i przez POST i GET przesłać, to możesz zrobić tak

$.post('ajax.php?name='+ $('#id_tabeli input[name=name']').val(), { surname: $('#id_tabeli input[name=surname']').val(), weight: $('#id_tabeli input[name=weight']').val(), height: $('#id_tabeli input[name=height']').val()}, function(data){
$('#id_tabeli').htm(data);
});

tym sposobem masz $_GET['name'] oraz $_POST['surname'], $_POST['weight'], $_POST['height']. Oczywiście kombinajce dowolne.

Choć dalej nie wiem dokładnie po co te inputy tam są.

Ten post edytował neosatan 25.04.2012, 15:52:28


--------------------
C/C++ (ucze się...), PHP (ucze się...), SMARTY(ucze się...), PYTHON(ucze się...), C#(uczę się...), PERL(uczę się...), JavaScript(uczę się...), JAVA(będą mi kazali się uczyć...)... Ja się głównie uczę...
Go to the top of the page
+Quote Post
viking
post 25.04.2012, 17:16:01
Post #9





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Tutaj oczywiście można wybierać bezpośrednio z wartości tak jak rozpisałeś, chociaż akurat chyba lepiej opakować całość w form ze względu na obsługę submita w jquery i ogromnej ilości pluginów na tym bazujących. Miałem raczej na myśli coś z nowych rzeczy (a w końcu HTML5 też jest dopiero w fazie zgłaszania uwag) np w połączeniu z animacjami CSS3, jako sprytne oszukiwanie klika. Mimo wprowadzenia :target powoduje on jednak przeskok czego przy tych luźnych inputach nie ma. Od strony formalnej taki zapis jest poprawny dlatego nie wnikałem głębiej. A czy w takim razie, jeśli technologia zezwala mówimy o złych nawykach? smile.gif


--------------------
Go to the top of the page
+Quote Post
neosatan
post 25.04.2012, 19:34:17
Post #10





Grupa: Zarejestrowani
Postów: 79
Pomógł: 2
Dołączył: 29.04.2009
Skąd: wrocław

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


hmm... ciężkie pytanie. Złym nawykiem jest korzystanie z deprecjonowanych funkcji mysql_* (no wiem, że jest dopiero zapowiadane deprecjonowanie), ale lepiej gdyby uczył się PDO. Stosowanie cellpadding w <table> przy HTML5 też. Tutaj co prawda jest kwestia pozwolenia technologii, bo przez parser przejdzie, natomiast walidator wyświetli komunikat. Z tymi inputami, to też raczej bym zalecał by używać z form ich (powody sam podałeś). Jakoś super wielkich uchybień tutaj nie ma. Gorzej by było jakby prezentował sortowanie bąbelkowe dla całości tabeli mysql.


--------------------
C/C++ (ucze się...), PHP (ucze się...), SMARTY(ucze się...), PYTHON(ucze się...), C#(uczę się...), PERL(uczę się...), JavaScript(uczę się...), JAVA(będą mi kazali się uczyć...)... Ja się głównie uczę...
Go to the top of the page
+Quote Post
Neyo
post 5.05.2012, 11:39:16
Post #11





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 23.04.2012

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


neosatan jedno pytanie jak mam wrzucić dane imie, nazwisko itp. to co chcę echować do zmiennej questionmark.gif, bo już sam nie wiem.

Już wszystko mi działa teraz jak zrobić, aby filtrować za pomocą .val() to co jest w inputach??
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: 19.06.2025 - 10:44