Autor Zpráva
dawe27
Profil
čau, potřeboval bych poradit jestli jde nějak cely obsah stránky přiřadit do 1 proměnné a nebo popř. nějaký jiný způsou jak by to šlo udělat
<?php
require_once("settings.php");
require_once "inc/header.php";
require_once "inc/theme.php";
$obsah=
$data= mysql_query ("select  *, DATE_FORMAT(`datum`,'%d.%m.%Y') as datum from novinky  WHERE `id`=".intval($_GET['id'])."");
while ($data1= MySQL_Fetch_Array($data)):  {
$data2=mysql_query ("select  cat_nov.cat_name from cat_nov WHERE cat_nov.cat_id=novinky.id_cat "); 
if ($_GET["id"] == $data1["id"]) { 
echo "<table width='450' border='1'>"; 
echo "<tr><td><a href='".$_SERVER["PHP_SELF"]."?id=".$data1["id"]."'><h1>". $data1["titulek"]."</h1></a></td></tr>"; 
?><tr><td><? echo stripslashes($data1["celytext"]);?></td></tr><? 
echo "<tr><td>".$data1["datum"]."</td></tr>";
echo "</table>";
}
} endwhile;

if ($_GET["id"] == 0) {
$data=mysql_query ("select  novinky.*,  DATE_FORMAT(`datum`,'%d.%m.%Y') as datum, cat_nov.cat_id,cat_nov.cat_name,cat_nov.cat_img from novinky,cat_nov  WHERE cat_nov.cat_id=novinky.id_cat ");
while ($data1= MySQL_Fetch_Array($data)):  { 
echo "<table width='450' border='1'>"; 
echo "<tr><td><h1><a href='".$_SERVER["PHP_SELF"]."?id=".$data1["id"]."'>". $data1["titulek"]."</a></h1></td></tr>"; 
?><tr><td><? echo stripslashes($data1["text"]);?></td></tr><?  
echo "<tr><td>".$data1["datum"]."</td></tr>";  
echo "<tr><td><a href='newscats.php?newscat=".$data1["cat_id"]."'>".$data1["cat_name"]."</a></td></tr>";  
echo "<tr><td><img src='".$data1["cat_img"]."' alt='img'/></td></tr>";  
echo "</table>";
 echo "<p></p>";

} endwhile; 
} 
;
require_once "inc/footer.php"; 
?> 
abych to pak mohl takto vypsat
      <table width='900' valign='top' border='0'>
      <tr> 
      <td class='left-panels'><table class='left_panels' border=0><?include "inc/left_panels.php";?></table></td>
      <td class='obsah'><?$obsah?></td> 
      <td class='right-panels'><table class='right_panels' border=0><?include "inc/right_panels.php";?></table></td>
      </tr>
      </table>
Nox
Profil
http://www.php.net/manual/en/ref.outcontrol.php
dawe27
Profil
takže tu část kterou chci mit jakoby $obsah obalím do fce ob_start(); OBSAH ob_end_flush();
ale pořad nevím jak to pak dát do toho 2. souboru <td class='obsah'><?$obsah?></td>
juriad
Profil
pro získání dat z bufferu použij http://www.php.net/manual/en/function.ob-get-flush.php místo ob_end_flush();
dawe27
Profil
jo ale pořad nevím jak to dosadim do (sablony)
      <table width='900' valign='top' border='0'>
      <tr> 
      <td class='left-panels'><table class='left_panels' border=0><?include "inc/left_panels.php";?></table></td>
      <td class='obsah'><?echo $obsah;?></td> 
      <td class='right-panels'><table class='right_panels' border=0><?include "inc/right_panels.php";?></table></td>
      </tr>
      </table>

<?php
require_once("settings.php");
require_once "inc/header.php";
require_once "inc/theme.php";

$obsah= ob_start(); 
$data= mysql_query ("select  *, DATE_FORMAT(`datum`,'%d.%m.%Y') as datum from novinky  WHERE `id`=".intval($_GET['id'])."");
while ($data1= MySQL_Fetch_Array($data)):  {
$data2=mysql_query ("select  cat_nov.cat_name from cat_nov WHERE cat_nov.cat_id=novinky.id_cat "); 
if ($_GET["id"] == $data1["id"]) { 
echo "<table width='450' border='1'>"; 
echo "<tr><td><a href='".$_SERVER["PHP_SELF"]."?id=".$data1["id"]."'><h1>". $data1["titulek"]."</h1></a></td></tr>"; 
?><tr><td><? echo stripslashes($data1["celytext"]);?></td></tr><? 
echo "<tr><td>".$data1["datum"]."</td></tr>";
echo "</table>";
}
} endwhile;

if ($_GET["id"] == 0) {
$data=mysql_query ("select  novinky.*,  DATE_FORMAT(`datum`,'%d.%m.%Y') as datum, cat_nov.cat_id,cat_nov.cat_name,cat_nov.cat_img from novinky,cat_nov  WHERE cat_nov.cat_id=novinky.id_cat ");
while ($data1= MySQL_Fetch_Array($data)):  { 
echo "<table width='450' border='1'>"; 
echo "<tr><td><h1><a href='".$_SERVER["PHP_SELF"]."?id=".$data1["id"]."'>". $data1["titulek"]."</a></h1></td></tr>"; 
?><tr><td><? echo stripslashes($data1["text"]);?></td></tr><?  
echo "<tr><td>".$data1["datum"]."</td></tr>";  
echo "<tr><td><a href='newscats.php?newscat=".$data1["cat_id"]."'>".$data1["cat_name"]."</a></td></tr>";  
echo "<tr><td><img src='".$data1["cat_img"]."' alt='img'/></td></tr>";  
echo "</table>";
 echo "<p></p>";

} endwhile; 
} 
ob_get_flush();;

 
require_once "inc/footer.php"; 
?> 

takto když to mam tak to ve výsledku to te tabulky kde má být obsah nezapiše nic a obsah se zobrazi pod tabulkou
TomasJ
Profil
To $data= mysql_query ("select *, DATE_FORMAT(`datum`,'... chceš dodat jako $obsah? Pokud ano, odstraň tagy <table>
Možná kdybys nepoužíval tabulky, vše by ti šlo lépe.
juriad
Profil
<?php
require_once("settings.php");
require_once "inc/header.php";
require_once "inc/theme.php";
 
ob_start(); // podívej se do manulálu na výstup funkce ob_start, vrací jen bool
$data= mysql_query ("select  *, DATE_FORMAT(`datum`,'%d.%m.%Y') as datum from novinky  WHERE `id`=".intval($_GET['id'])."");
while ($data1= MySQL_Fetch_Array($data)):  {
...
} endwhile; 
} 
$obsah = ob_get_flush(); // nyní je v $obsah vše, co bylo vytištěno od zavolání ob_start()
 
 
require_once "inc/footer.php"; 
?> 

podívej se na syntaxi while, buď je možný s dvojtečkou a endwhile, nebo slozenými závorkami, toto je divné
chápu, že většina návodů používá mysql_query, ale to je už zastaralé a pro nové aplikace by se nemělo používat, podívej se na mysqli
dawe27
Profil
pořad to nejde, když dám zdrojový kod te stránky tak ta tabulka kde má být obsah je prázdná a obsah je zobrazený pod tím,
kdyžtak tady je odkaz na web http://db27.hys.cz/novinky.php
<?php
require_once("settings.php");
require_once "inc/header.php";
require_once "inc/theme.php";

ob_start(); 
$data= mysql_query ("select  *, DATE_FORMAT(`datum`,'%d.%m.%Y') as datum from novinky  WHERE `id`=".intval($_GET['id'])."");
while ($data1= MySQL_Fetch_Array($data)):  {
$data2=mysql_query ("select  cat_nov.cat_name from cat_nov WHERE cat_nov.cat_id=novinky.id_cat "); 
if ($_GET["id"] == $data1["id"]) { 
echo "<table width='450' border='1'>"; 
echo "<tr><td><a href='".$_SERVER["PHP_SELF"]."?id=".$data1["id"]."'><h1>". $data1["titulek"]."</h1></a></td></tr>"; 
?><tr><td><? echo stripslashes($data1["celytext"]);?></td></tr><? 
echo "<tr><td>".$data1["datum"]."</td></tr>";
echo "</table>";
}
} endwhile;

if ($_GET["id"] == 0) {
$data=mysql_query ("select  novinky.*,  DATE_FORMAT(`datum`,'%d.%m.%Y') as datum, cat_nov.cat_id,cat_nov.cat_name,cat_nov.cat_img from novinky,cat_nov  WHERE cat_nov.cat_id=novinky.id_cat ");
while ($data1= MySQL_Fetch_Array($data)):  { 
echo "<table width='450' border='1'>"; 
echo "<tr><td><h1><a href='".$_SERVER["PHP_SELF"]."?id=".$data1["id"]."'>". $data1["titulek"]."</a></h1></td></tr>"; 
?><tr><td><? echo stripslashes($data1["text"]);?></td></tr><?  
echo "<tr><td>".$data1["datum"]."</td></tr>";  
echo "<tr><td><a href='newscats.php?newscat=".$data1["cat_id"]."'>".$data1["cat_name"]."</a></td></tr>";  
echo "<tr><td><img src='".$data1["cat_img"]."' alt='img'/></td></tr>";  
echo "</table>";
 echo "<p></p>";

} endwhile; 
} 
 echo "</div>";
$obsah= ob_get_flush(); 

 
require_once "inc/footer.php"; 
?> 
theme.php
<?php
//HEADER
echo "    <div align='center'><table cellspacing='0' cellpadding='0' width='900' align='center'><tr><td class='header'></td></tr></table></div>";
       
//obsah
?>
      <div align='center'>
      <table width='900'  border='0'> 
      <tr> 
      <td class='left-panels'  valign='top'><table class='left_panels' border='0'><?include "inc/left_panels.php";?></table></td>
      <td class='obsah'        valign='top'><?print $obsah;?></td>  
      <td class='right-panels' valign='top'><table class='right_panels' border='0'><?include "inc/right_panels.php";?></table></td>
      </tr>
      </table>
       
<?

?>
juriad
Profil
konečně jsem pochopil, o co se snažíš...
uvnitř stránky novinky.php si chceš do proměnné $obsah uložit včechny novinky vytahnuté z databáze. $obsah se pak snažíš vypsat uprostřed jiného php, které z novinky.php requirneš.

Přesuň require_once "inc/theme.php"; z 4. řádky až za 34. řádku, kde proměnná $obsah bude definovaná a nastavená.
dawe27
Profil
jo jde mi to :) , akorát se ten obsah zobrazí 2x tam kde má a ještě nad webem
http://db27.hys.cz/novinky.php
juriad
Profil
aha, omlouvám se (spletl jsem si funkce), správná je http://cz.php.net/manual/en/function.ob-get-clean.php
ty co mají v názvu flush vyplivnou obsah na výstup, ty co mají get vrátí jako string (takže ob_get_flush() udělá obojí)
dawe27
Profil
jo jde mi to diky :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: