Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][HTML][PHP]Nowe newsy na moim szablonie ?
Forum PHP.pl > Forum > Przedszkole
Bustard
Witam,
mam prosty skrypt z newsami, każdy news ma ID, jest też pare linijek odpowiedzialnych za wyświetlanie na stronie tylko 5 najnowszych newsów.
Ale nie w tym rzecz, gdy dodam news'a, któremu jest przydzielone np. id=8, to zostaje wyświetlony na nowej białej stronie jego treść, no w sumie wszystko poprawnie, aczkolwiek chcę to dostosować do strony na której te news'y mają się znajdować. A mianowicie aby każdy nowy news (każde kolejne id) było otwierane w moim szablonie w wyznaczonym miejscu.
Myślę że zrozumiecie businesssmiley.png
b4rt3kk
Nie rozumiemy. Kod? Przykład działania? Screen? Link?
Bustard
Wyświetlanie newsów wszystkich :
  1. <?php
  2. include("polacz.php"); // 1
  3. $query = mysql_query("select * from news order by id desc limit 0,5"); // 2
  4. while($rekord = mysql_fetch_array($query))
  5. {
  6. $naz .= '<li><a href="news.php?id='.$rekord[0].'">'.$rekord[1].'</a> Autor: '.$rekord[3].' - '.$rekord[2].'</li>'; // 3
  7. }
  8. echo '<ul>'.$naz.'</ul>'; // 4
  9. ?>

Wyświetlanie danego newsa:
  1. <?php
  2. include("polacz.php");
  3. $query = mysql_query("select * from news where id='".(int)$_GET['id']."'"); // 1
  4. $rekord = mysql_fetch_array($query);
  5. echo '<h1>'.$rekord[1].'</h1>Autor: '.$rekord[3].'<br/>Data: '.$rekord[2].'<p>'.$rekord[4].'</p>'; // 2
  6. ?>


Dodawanie newsów :
  1. <form action="" method="post">
  2. tytuł: <input type="text" name="tytul">
  3. <br/>autor <input type="text" name="autor">
  4. <br/>treść <textarea name="tresc" rows="20" cols="50"></textarea>
  5. <br/><input type="submit" value="Dodaj"></form>
  6. <?php
  7. include("polacz.php");
  8. if($_SERVER['REQUEST_METHOD'] == 'POST')
  9. {
  10. $query = mysql_query("insert into news values('','".$_POST['tytul']."',now(),'".$_POST['autor']."','".$_POST['tresc']."')");
  11. }
  12. ?>


A chodzi mi po prostu o to, aby zamiast na nowej stronie (np.news.php?id=9) gdzie jest pusto i tylko treść na białej stronie, dostosować ten skrypt tak żeby był mój szablon i w danym miejscu treść.
b4rt3kk
To bardzo proste, opakuj treść newsa swoim HTML-em.

  1. <div class="asdf">
  2. <?php
  3. include("polacz.php");
  4. $query = mysql_query("select * from news where id='".(int)$_GET['id']."'"); // 1
  5. $rekord = mysql_fetch_array($query);
  6. echo '<h1>'.$rekord[1].'</h1>Autor: '.$rekord[3].'<br/>Data: '.$rekord[2].'<p>'.$rekord[4].'</p>'; // 2
  7. ?>
  8. </div>


Itd.
Bustard
No niby tak, ale tworząć nowego newsa, nie będzie mi tworzyć na moim szablonie.. tylko będzie wciąż biała strona.
Znaczy wchodząc w tego newsa, jego rozwinięcie nie otworzy mi się w karcie mojego szablonu.
b4rt3kk
Cytat(Bustard @ 7.11.2013, 17:12:33 ) *
No niby tak, ale tworząć nowego newsa, nie będzie mi tworzyć na moim szablonie.. tylko będzie wciąż biała strona.
Znaczy wchodząc w tego newsa, jego rozwinięcie nie otworzy mi się w karcie mojego szablonu.


No jak nie będzie tworzyć na Twoim szablonie? A próbowałeś w ogóle? Zakładam, że treść wyświetlana jest przez news.php? Tam właśnie zbuduj swój szablon.
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.