Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Przejście do dodanego komentarza, Automatyczne
astanas
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 4.02.2010

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


Mam pytanie jak uzyskać taką funkcjonalność jak np na tej stronie, czyli po dodaniu odpowiedzi i przeładowaniu strony automatycznie jesteśmy przenoszeni do dodanego postu, czyli np na koniec?

Drugie pytanie, jak po wysłaniu formularza wyświetlić wiadomość w wybranym miejscu na stronie a nie tu gdzie znajduje się formularz?
Go to the top of the page
+Quote Post
lnn
post
Post #2





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

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


dodajesz bookmarka
  1. <a name="nazwa"></a>
  2. <!-- pozniej wywolujesz -->
  3. <a href="#nazwa" >moja zakladka</a>

co do drugiego pyt to
  1. // robisz instrukcje warunkowa if np.
  2. if () {
  3. // wartosc jesli prawda
  4. $komunikat = "ok"; } else {
  5. // jesli false
  6. $komunikat2 = "zle"; }
  7.  
  8. //i pozniej na stronie wywolujesz tylko zmienna
  9.  
  10. echo $komunikat.$komunikat2;

pamietaj ze skrypt mu sie wykonywac przed zmienna ktora chcesz wyswietlic

Ten post edytował lnn 4.02.2010, 18:25:15
Go to the top of the page
+Quote Post
Kamil Pietrzak
post
Post #3





Grupa: Zarejestrowani
Postów: 213
Pomógł: 10
Dołączył: 7.01.2010
Skąd: Lublin

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


tam gdzie wywalisz <? echo $_POST['tresc'];?> tam bedzie to co odebrales
mozna to zapisac krocej <?=$_POST['tresc'];?>
Go to the top of the page
+Quote Post
astanas
post
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 4.02.2010

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


Cytat
dodajesz bookmarka
  1. <a name="nazwa"></a>
  2. <!-- pozniej wywolujesz -->
  3. <a href="#nazwa" >moja zakladka</a>

A możesz to bardziej łopatologicznie wyjażnić bo jakoś nie mogę złapać?



Cytat
pamietaj ze skrypt mu sie wykonywac przed zmienna ktora chcesz wyswietlic

Rzeczywiście jest ok, ale chciałbym wyświetlić komunikat, który znajdzie się wyżej skrypt, jak to ominąć?
Go to the top of the page
+Quote Post
lnn
post
Post #5





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

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


moze np zapisac w sesji komunikat albo poprzez POST (tego 2 nie jestem pewien ale 1 powinno zadzialac tongue.gif)
przykladowo:
  1. if (isset($_POST['wyslij'])) {
  2. $_SESSION['komunikat'] = "komunikat" }
  3.  
  4. //i potem sobie wywolujesz go tylko tam wyzej
  5. echo $_SESSION['komunikat'] ;

tylko pamietaj ze to zostanie zapamietane az do wylaczenia przegladarki chyba ze ustawisz jakies ograniczenie czasowe na wyswietlanie tego

Cytat(astanas @ 4.02.2010, 19:04:05 ) *
A możesz to bardziej łopatologicznie wyjażnić bo jakoś nie mogę złapać?

no nie wiem co w tym nie zrozumialego, mozesz byle co na stronie oznaczyc takim bookmarkiem i przejsc do tego dolaczajac do adresu strony np.: strona.html#zakladka

chociazby sproboj przejsc do mojego postu tez sa oznaczane zakladkami: http://forum.php.pl/index.php?showtopic=14...mp;#entry709507

zjedzie ci do momentu gdzie jest zakladka strona

Ten post edytował lnn 4.02.2010, 19:39:21
Go to the top of the page
+Quote Post
astanas
post
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 4.02.2010

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


Nic nie mogę wymyśleć, może mi ktoś z tym pomóc?
Mam formularz:
  1. ...
  2. <form action='' method='post'>
  3. <h3>Dodaj komentarz<br />
  4. <textarea id=\"box\" name='content' cols='130' rows='5'></textarea><br />
  5. <input type='submit' value=' Wyślij ' />
  6. </form></div>";
  7. if(isset($_POST['content'])){
  8. $content = mysql_real_escape_string($_POST['content']);
  9. $date = date("Y-m-d H:i:s");
  10. if($db->query("INSERT INTO `comments` VALUES('','$user_name','$content','$id','$date')")){
  11. TUTAJ WIADOMOŚĆ JEŚLI WYSŁANY
  12. }
  13. }";
  14. }
  15. ....

Jak teraz zrobić aby przekierowało odrazu na link z dodanym #komentarz

Czyli np strona z której ktoś wysyła komentarz ma adres:
http://mojastrona.pl/costam.php

Jak wyżej kolega wspomniał, dodam bookmark <a name="komantarz"></a> i chcę aby po przeładowaniu strony link wyglądał tak http://mojastrona.pl/costam.php#komentarz żeby użytkownik został przeniesiony na dół strony do komentarza
Go to the top of the page
+Quote Post
Kamil Pietrzak
post
Post #7





Grupa: Zarejestrowani
Postów: 213
Pomógł: 10
Dołączył: 7.01.2010
Skąd: Lublin

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


przekierowanie na wygenerowany adres
Go to the top of the page
+Quote Post
lnn
post
Post #8





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

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


zrob przekierowanie po wyslaniu i wstaw mysql_last_id() ktory to bedzie identyfikatorem danego wpisu ;p
Go to the top of the page
+Quote Post
astanas
post
Post #9





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 4.02.2010

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


Ok, zrobiłem to tak:
na początki pliku dodałem ob_start();
A w miejscu, gdzie wyświetlił by się komunikat:


  1.  
  2. $link = "www.adres.pl/koment_".$id."";
  3. header("Location: ".$link."");
  4.  


Wszystki jest dobrze, ale nie wiem czy taki sposób jest dobry, tzn używanie ob_start(); questionmark.gif
Go to the top of the page
+Quote Post
Kamil Pietrzak
post
Post #10





Grupa: Zarejestrowani
Postów: 213
Pomógł: 10
Dołączył: 7.01.2010
Skąd: Lublin

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


nie wiem po co Ci w ogole ob
zrob dodatkowy plik a w nim odbierasz dane, robisz link i wywalasz
header('Location: '.$link); na koncu
jest jeszcze funkcja exit() ktora konczy dzialanei skryptu, ale chyba nei bedzie potrzebna
Go to the top of the page
+Quote Post
lnn
post
Post #11





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

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


dzizas krajst, zrob tak:
  1. // jesli nacisniesz przycisk submit o nazwie dajmy na to "wyslij"
  2.  
  3. if (isset($_POST['wyslij'])) {
  4.  
  5. //zapis tych danych co tam zapisujesz
  6.  
  7. // polaczenie z baza o ile wczesniej nie zostalo nawiazane
  8. $last_insert = mysql_insert_id();
  9. $zapytanie = $mysql_query("SELECT * FROM jakastabela WHERE id = '".$last_insert."' ")
  10.  
  11. while ($show = mysql_fetch_array($zapytanie)) {
  12. // wyciagasz to co tam chcesz $show['id_w_tabeli']
  13. }
  14.  


Ten post edytował lnn 4.02.2010, 22:08:11
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 Aktualny czas: 21.08.2025 - 14:23