Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP,MYSQL] "panel admina"
Forum PHP.pl > Forum > Przedszkole
Malas
http://wklej.org/id/77084/

A więc mam problem. może zbyt szybko biorę się za takie rzeczy w sumie no ale jak już piszę to może pomożecie.
w treści tego pliku(link wyżej) jest napisany taki mini mini panel admina gdzie mogę dodawać newsy,usuwać je i edytować, a także dodawać edytować, usuwać, zawodników. Nie ukrywam, że część "newsowa" to kod z tutoriala z innego forum. Chciałem do tego dopisać dodwanie,usuwanie,edytowanie zawodników. No i tak jakby skopiowałem część odpowiedzialną za newsy z tym, że pozmieniałem oczywiście wartości aby przystosowane to były do zawodników. Gdzieś musi być błąd ponieważ teraz gdy naciskam "Dodaj Newsa" jest pusta strona, a powinien pojawić się formularz.
Następny błąd to to, że gdy wpisuje dane zawodnika i klikam dodaj to niedodaje go do bazy tylko tak jakby strona się odświeża tylko.
i pytanie: czy taki kod jaki tam jest teraz ma prawo działać w ogóle?smile.gif
TheaSiX
  1. <?php
  2. elseif(isset($_GET['newsy']) && $_GET['newsy']=='dopisz')
  3. ?>


linia 81, nie powinno zamiast DOPISZ byc DODAJ?
Malas
Cytat(TheaSiX @ 11.04.2009, 20:27:00 ) *
  1. <?php
  2. elseif(isset($_GET['newsy']) && $_GET['newsy']=='dopisz')
  3. ?>


linia 81, nie powinno zamiast DOPISZ byc DODAJ?


ok dzięki, dodawanie newsów już działa ale z zawodnikami dalej jest problem który opisałem w 1 poście.
TheaSiX
znalazłem inny błąd

  1. <?php
  2. mysql_query("INSERT INTO news VALUES(0,'$imie','$nazwisko','$urodzony','kraj','wzrost','waga')");
  3. ?>


linia 288, zapomniales dodac $ przed kraj, wzrost, waga..

opisz dokładnie co się dzieje gdy klikniesz w łącze dodaj zawodnika..
Malas
No jakby działało poprawnie to by wyświetliło
Cytat
echo 'Pomyślnie dodałem zawodnika o parametrach: <b>'.$imie.'</b> <b>'.$nazwisko.'</b> <b>'.$urodzony.'</b> <b>'.$kraj.'</b> <b>'.$wzrost.'</b> <b>'.$waga.'</b>';

A jak klikam dodaj to po prostu strona jakby się tylko odświeżała i żadnego komunikatu nie mam, znowu pusty formularz.
TheaSiX
w tej samej linii co podałem.. masz

  1. <?php
  2. INSERT INTO news
  3. ?>


powinno byc

  1. <?php
  2. INSERT INTO player
  3. ?>


sprawdź teraz?
Malas
Cytat(TheaSiX @ 11.04.2009, 22:43:41 ) *
w tej samej linii co podałem.. masz

  1. <?php
  2. INSERT INTO news
  3. ?>


powinno byc

  1. <?php
  2. INSERT INTO player
  3. ?>


sprawdź teraz?

to już wcześniej zauważyłem, nic nie dało:)
TheaSiX
hmm no dobra. Klikasz dodaj zawodnika i wyświetla się pusty formularz. Później klikasz DODAJ i znów widzisz tylko formularz... dziwne..

a dodaje się cokolwiek do bazy?
Malas
Cytat(TheaSiX @ 11.04.2009, 22:51:15 ) *
hmm no dobra. Klikasz dodaj zawodnika i wyświetla się pusty formularz. Później klikasz DODAJ i znów widzisz tylko formularz... dziwne..

a dodaje się cokolwiek do bazy?

Nie dodaje nic. Klikam DODAJ i tak jakby się po prostu odświeżała strona, żadna akcja nie jest wykonywana.




edit:
działa..
elseif(isset($_GET['player']) && $_GET['player']=='dopisz') wcześniej było 'dodaj'

sory za posta pod postem.

Teraz chciałbym dodać do tych newsów stronnicowanie, a więc treść news.php wygląda tak (już z moją próbą dodania):
Cytat
<?
$uchwyt=mysql_connect('localhost','root','haslo')
or die('Nieudane połączenie z bazą danych...');
mysql_select_db('malas')
or die('Nie udało się wybrać bazy danych...');

$display = 6;
if (isset($_GET['np'])) {
$num_pages = $_GET['np'];
} else {

$query = "SELECT COUNT(*) FROM news ORDER BY id desc";
$result = mysql_query ($query);
$row = mysql_fetch_array ($result, MYSQL_NUM);
$num_records = $row[0]

if ($num_records > $display) { //wiecej niz 1 strona.
$num_pages = ceil ($num_records/$display);
} else {
$num_pages = 1;
}
}

if (isset($_GET['s'])) {
$start = $_GET['s'];
} else {
$start = 0;
}

//utworz zapytanie
$query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";


$link=mysql_query("SELECT * FROM news ORDER BY id desc");
while($wiersz=mysql_fetch_array($link))
{
echo '<b>';
echo $wiersz['tytul'];
echo '</b> (';
echo $wiersz['data'];
echo ')';
echo "<br>\n";
echo $wiersz['tresc'];
echo "<br>\n";
echo "<br>\n";
}


if ($num_pages > 1) {
echo '<br /><p>';
$current_page = ($start/$display) + 1;
if ($current_page != 1 {
echo '<a href="news.php?s=' . ($start - $display) . '&np=' . $num_pages .'">Poprzednia</a> ';
}


mysql_close($uchwyt);
?>


wywala parse error w linii 17:
Cytat
if ($num_records > $display) { //wiecej niz 1 strona.

ja jakoś tutaj czegoś niedomkniętego się nie dopatrzyłem..
bartolomeo
w 15 linii dopisz średnik po row[0]
Malas
Ok znalazłem jeszcze parę błędów i je poprawiłem i niby jest ok, ale stronicowanie nie działa..

news.php

  1. <?php
  2. $uchwyt=mysql_connect('localhost','root','haslo')
  3.    or die('Nieudane połączenie z bazą danych...');
  4.    or die('Nie udało się wybrać bazy danych...');
  5.  
  6. $display = 6;
  7. if (isset($_GET['np'])) {
  8. $num_pages = $_GET['np'];
  9. } else {
  10.  
  11. $query = "SELECT COUNT(*) FROM news ORDER BY id desc";
  12. $result = mysql_query ($query);
  13. $row = mysql_fetch_array ($result, MYSQL_NUM);
  14. $num_records = $row[0];
  15.  
  16. if ($num_records > $display) { //wiecej niz 1 strona.
  17. $num_pages = ceil ($num_records/$display);
  18. } else {
  19. $num_pages = 1;
  20. }
  21. }
  22.  
  23. if (isset($_GET['s'])) {
  24. $start = $_GET['s'];
  25. } else {
  26. $start = 0;
  27. }
  28.  
  29. //utworz zapytanie
  30. $query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";
  31.  
  32.  
  33. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  34. while($wiersz=mysql_fetch_array($link))
  35. {
  36.    echo '<b>';
  37.    echo $wiersz['tytul'];
  38.    echo '</b> (';
  39.    echo $wiersz['data'];
  40.    echo ')';    
  41.    echo "<br>\n";
  42.    echo $wiersz['tresc'];
  43.    echo "<br>\n";
  44.    echo "<br>\n";
  45. }
  46.  
  47.  
  48. if ($num_pages > 1) {
  49. echo '<br /><p>';
  50. $current_page = ($start/$display) + 1;
  51. if ($current_page != 1) {
  52. echo '<a href="news.php?s=' . ($start - $display) . '&np=' . $num_pages .'">Poprzednia</a> ';
  53. }
  54. }
  55.  
  56. mysql_close($uchwyt);
  57. ?>
Spawnm
a daj kod w bbcode dla php , aby kod był czytelny smile.gif
  1. <?php
  2. //utworz zapytanie
  3. $query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";
  4.  
  5.  
  6. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  7. while($wiersz=mysql_fetch_array($link))
  8. ?>


$query nigdzie się nie wykonuje ...
Malas
teraz już całkiem namieszałem sciana.gif
  1. <?php
  2. //utworz zapytanie
  3. $query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";
  4.  
  5. $result = mysql_query ($query); // wykonaj zapytanie.
  6. ?>

wcześniej jak napisałeś query się nigdzie nie wykonywało to dodałem $result, dobrze zrobiłem?

tresc news.php wygląda teraz tak:
  1. <?php
  2. $uchwyt=mysql_connect('localhost','root','mateusz10')
  3.    or die('Nieudane połączenie z bazą danych...');
  4.    or die('Nie udało się wybrać bazy danych...');
  5.  
  6. $display = 6;
  7. if (isset($_GET['np'])) {
  8. $num_pages = $_GET['np'];
  9. } else {
  10.  
  11. $query = "SELECT COUNT(*) FROM news ORDER BY id desc";
  12. $result = mysql_query ($query);
  13. $row = mysql_fetch_array ($result, MYSQL_NUM);
  14. $num_records = $row[0];
  15.  
  16. if ($num_records > $display) { //wiecej niz 1 strona.
  17. $num_pages = ceil ($num_records/$display);
  18. } else {
  19. $num_pages = 1;
  20. }
  21. }
  22.  
  23. if (isset($_GET['s'])) {
  24. $start = $_GET['s'];
  25. } else {
  26. $start = 0;
  27. }
  28.  
  29. //utworz zapytanie
  30. $query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";
  31.  
  32. $result = mysql_query ($query); // wykonaj zapytanie.
  33. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  34. while($wiersz=mysql_fetch_array($link))
  35. {
  36.    echo '<b>';
  37.    echo $wiersz['tytul'];
  38.    echo '</b> (';
  39.    echo $wiersz['data'];
  40.    echo ')';    
  41.    echo "<br>\n";
  42.    echo $wiersz['tresc'];
  43.    echo "<br>\n";
  44.    echo "<br>\n";
  45. }
  46.  
  47.  
  48. if ($num_pages > 1) {
  49. echo '<br /><p>';
  50. $current_page = ($start/$display) + 1;
  51. if ($current_page != 1) {
  52. echo '<a href="news.php?s=' . ($start - $display) . '&np=' . $num_pages .'">Poprzednia</a> ';
  53. }
  54. }
  55.  
  56. mysql_close($uchwyt);
  57. ?>


stronicowanie dalej nie działa.
Spawnm
  1. <?php
  2. $result = mysql_query ($query); // wykonaj zapytanie.
  3. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  4. while($wiersz=mysql_fetch_array($link))
  5. ?>

zamiast $link który pobiera wszystko daj $result ...
Malas
  1. <?php
  2. //utworz zapytanie
  3. $query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";
  4.  
  5. $result = mysql_query ($query); // wykonaj zapytanie.
  6.  
  7. while($wiersz=mysql_fetch_array($result))
  8. {
  9.    echo '<b>';
  10.    echo $wiersz['tytul'];
  11.    echo '</b> (';
  12.    echo $wiersz['data'];
  13.    echo ')';    
  14.    echo "<br>\n";
  15.    echo $wiersz['tresc'];
  16.    echo "<br>\n";
  17.    echo "<br>\n";
  18. }
  19. ?>

czyli tak ma to wyglądać?
Bo teraz to wyświetla te newsy po id , no i stronicowanie dalej nie działa.
Spawnm
pewnie tak... czemu się pytasz zamiast sprawdzić ...

po co pobierasz id skoro nic z nim nie robisz??
Malas
Sprawdziłem przecież..ehh no to jak całość ma wyglądać żeby to stronicowanie działało;/
Spawnm
ale jak nie działa ? jakieś błędy ?
czemu w menu jest tylko Poprzednia a nie ma następna ?
Malas
  1. <?php
  2. $uchwyt=mysql_connect('localhost','root','haslo')
  3.    or die('Nieudane połączenie z bazą danych...');
  4.    or die('Nie udało się wybrać bazy danych...');
  5.  
  6. $display = 6;
  7. if (isset($_GET['np'])) {
  8. $num_pages = $_GET['np'];
  9. } else {
  10.  
  11. $query = "SELECT COUNT(*) FROM news ORDER BY id desc";
  12. $result = mysql_query ($query);
  13. $row = mysql_fetch_array ($result, MYSQL_NUM);
  14. $num_records = $row[0];
  15.  
  16. if ($num_records > $display) { //wiecej niz 1 strona.
  17. $num_pages = ceil ($num_records/$display);
  18. } else {
  19. $num_pages = 1;
  20. }
  21. }
  22.  
  23. if (isset($_GET['s'])) {
  24. $start = $_GET['s'];
  25. } else {
  26. $start = 0;
  27. }
  28.  
  29. //utworz zapytanie
  30. $query = "SELECT id, tytul, tresc, data FROM news ORDER BY id ASC LIMIT $start, $display";
  31.  
  32. $result = mysql_query ($query); // wykonaj zapytanie.
  33.  
  34. while($wiersz=mysql_fetch_array($result))
  35. {
  36.    echo '<b>';
  37.    echo $wiersz['tytul'];
  38.    echo '</b> (';
  39.    echo $wiersz['data'];
  40.    echo ')';    
  41.    echo "<br>\n";
  42.    echo $wiersz['tresc'];
  43.    echo "<br>\n";
  44.    echo "<br>\n";
  45. }
  46.  
  47.  
  48. if ($num_pages > 1) {
  49. echo '<br /><p>';
  50. $current_page = ($start/$display) + 1;
  51. if ($current_page != 1) {
  52. echo '<a href="news.php?s=' . ($start - $display) . '&np=' . $num_pages .'">Poprzednia</a> ';
  53. }
  54. }
  55.  
  56. for ($i = 1; $i <=num_pages; $i++){
  57. if ($i != $current_page) {
  58. echo '<a href="news.php?s=' . (($display * ($i - 1))) . '&np=' . $num_pages . '">' . $i . '</a>';
  59. } else {
  60. echo $i . ' ';
  61. }
  62. }
  63. if ($current_page != $num_pages) {
  64. echo '<a href="news.php?s=' . ($start + $display) . '&np=' . $num_pages . '">Następna</a>';
  65. }
  66. echo '</p>';
  67.  
  68.  
  69. mysql_close($uchwyt);
  70. ?>


No teraz jest dokończony. Tylko teraz źle tworzy link czyli gdzieś błąd zrobiłem.
Jestem sobie na news.php i klikam Następna i przenosi do linku: http://adres.pl/news.php?s=6&np=2
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.