Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z poprawnym wyświetlaniem danych z MySQL
szefol7
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 30.10.2004

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


Postaram się wyjaśnić co mam na myśli jak najlepiej:)
Chcę, żeby wyświetlało mi na stronce poszczególne rekordy tabeli z bazy MySQL, a na dole strony był formularz który by dodawał jeden element do tej tabeli. Po wpisaniu jedengo elementu chciał bym aby po kliknięciu był on dodawany do tabeli i odrazu ładowała się ta sama stronka, odświeżona z wyświetlonym świeżo dodanym elementem i na dole znowu była możliwość dodania nowego elementu.

Można coś takiego zrobić, żeby było to wszystko wykonywane na jednej stronce? Bo przy użyciu POST lub GET chyba nie, ponieważ dane są przysyłane do następnej stronki, prawda? Jeżeli nie mam racji to prosze o uświadomienie mnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Prosze o napisanie czy jest to możliwe i jeżeli tak, to jak można to zrobić.

Z góry dziękuję.
Pozdrawiam.

Ten post edytował szefol7 2.11.2004, 00:31:25
Go to the top of the page
+Quote Post
ActivePlayer
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


Robisz tak...
  1. <?php
  2. //sprawdzanie danych czy są poprawne... jesli nie $error.=\"Błąd jakistam<br>\";
  3. if(isset($_POST[dodaj]) AND !isset($error))
  4. {
  5. echo &#092;"dodawanie\";
  6. // wpisywanie danych do mysqla
  7. }
  8. //
  9. //Wyswietlanie danych
  10. //pobranych z mysql
  11.  
  12. //----------
  13.  
  14. echo $error;
  15. //Formularz dodawania
  16. //<form action=\"ten_plik.php\" method=\"POST\">
  17. //jakies tam pola
  18. //<input type=\"submit\" name=\"dodaj\" value=\"costam\">
  19. //</form>
  20. ?>



przestudiuj to... jak zrobilem jakis bug to poprawcie mnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował ActivePlayer 1.11.2004, 14:41:53
Go to the top of the page
+Quote Post
redman2
post
Post #3





Grupa: Zarejestrowani
Postów: 104
Pomógł: 3
Dołączył: 13.10.2004

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


Pewnie, ze mozna cos takiego zrobic (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

1. metode formularza ustaw jako POST, a akcje jako PHP_SELF

  1. <form name="form" method="post" action="<?php echo $PHP_SELF; ?>">


2. umiesc skrypt php nad html'em i zaimplementuj wpisanie do bazy a nastepnie wyciaganie

  1. <?
  2. $firma=$_POST[firma];  // to samo robisz dla imienia i nazwiska
  3.  
  4. include 'connect.php'; // twoj sposob laczenia sie z baza
  5.  
  6. $sql=&#092;"INSERT INTO uzytk VALUES ('','$firma', '$imie', '$nazw')\";
  7. $result=mysql_query($sql,$conn) or die (mysql_error(&#092;"Nie moge wpisac uzytkownika\"));
  8.  
  9.  
  10. ?>


a tu wyciagasz

  1. <?php
  2.  
  3. $sql = &#092;"SELECT * FROM uzytk where id=$id\"; 
  4. $result = mysql_query($sql,$conn) or die (mysql_error(&#092;"Nie moge wypisac uzytkownika\")); 
  5. while($row = mysql_fetch_array($result)) 
  6. { 
  7. $db_firma = stripslashes($row[&#092;"firma\"]); echo \"$db_firma<br>\";
  8. $db_imie = $row[&#092;"imie\"]; echo \"$db_imie<br>\";
  9. $db_nazw = $row[&#092;"nazw\"]; echo \"$db_nazw<br>\";
  10.  
  11. ?>



i za kazdym razem po wpisaniu czegos do formularza, u gory na stronie automatycznie wyswietli Ci sie to, co wyciagniesz z bazy.
Go to the top of the page
+Quote Post
szefol7
post
Post #4





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 30.10.2004

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


Teraz juz prawie wszystko jest dobrze, ale napotkalem na jeden problem. Dane pobrane z MySQL-a są jakby niewidoczne, poprostu tam gdzie powinna być nazwa grupy jest wstawiona pusta linia. Dla upewnienia się czy wstawia pustą linię dodałem w skrypcie, aby po każdej lini z danymi z bazy wypisywał napis "Nowa linia" i ten napis pojawia się co drugą linię, a im więcej dodaje danych do bazy tym tych lini przybywa, skąd wniosek, ze coś jest do niej dodawane i coś jest pobierane, ale nie moge tego wyświetlić.

Poniżej załączam mój skrypt.
Prosze o pomoc w zlokalizowaniu błędu, gdyż ja niestety nie mam pojęcia co to może być.

Kod
<?php
include ('./inc/adminnaglowek.txt');


$nowa_grupa=$_POST[nowa_grupa];

include ('connect.php');

if (!($nowa_grupa==""))
{
$query="INSERT INTO grupy VALUES ('$nowa_grupa')";
$wynik=mysql_query($query,$id_polaczenia) or die (mysql_error("Nie moge wpisac nowej grupy"));
}

$sql = "SELECT * FROM grupy";
  $result = mysql_query($sql,$id_polaczenia) or die (mysql_error("Nie moge wypisac listy grup"));
  while($row = mysql_fetch_array($result))
      {
      $db_grupa = $row["firma"];
      echo "$db_grupa<br>";
      echo "Nowa linia<br>";
      }

      


?>

<form name="form" method="post" action="<?php echo $PHP_SELF; ?>">
<input type="text" name="nowa_grupa">
<input type="submit" volume="Dodaj">

</form>

</body>
</html>
Go to the top of the page
+Quote Post
Vertical
post
Post #5





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

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


  1. <?php
  2. $db_grupa = $row[&#092;"firma\"]; 
  3.  echo &#092;"$db_grupa<br>\";
  4. ?>

Zamiast tego spróbuj tam wstawić
  1. <?php
  2. printf(&#092;"%n\",
  3.  $row['firma']);
  4. ?>
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 04:09