Newsscript

tittli

Erfahrenes Mitglied
Hallo
Wollte ein kleines Newsscript programmieren. Ich speichere die News in einer Datenbank und lese sie dann aus, also ich kürze sie, und zwar mit

PHP:
echo substr($text, 0, strpos($text," ",50))."... ";

Danach kommt ein Link "Weiterlesen".
Da übergebe ich eine Session mit:
PHP:
$_SESSION['id'] = $row['id'];

Mit Weiterlesen komme ich auf die Datei news_lang.php:

PHP:
<?php
 include("dbconnect.php");
 session_start();
 $id = $_SESSION['id'];
 echo $id;
 $sql = "SELECT * FROM news WHERE id = '$id'";
 $select = mysql_query($sql);
 $menge = mysql_num_rows($select);
 while($row = mysql_fetch_array($select))
 	{
         $timestamp = $row["datum"];
         $monate = array(
         	1=>"Januar",
         	2=>"Februar",
         	3=>"März",
         	4=>"April",
         	5=>"Mai",
         	6=>"Juni",
         	7=>"Juli",
         	8=>"August",
         	9=>"September",
         	10=>"Oktober",
         	11=>"November",
         	12=>"Dezember");
 	$tag = date("d", $timestamp);
 	$monat = date("m", $timestamp);
         $jahr = date("Y", $timestamp);
         $uhrzeit = date("H:i", $timestamp);
 	$mo_akt = $monate[$monat];
 	$datum = "$tag"." "."$mo_akt"." "."$jahr";
         $titel = $row['titel'];
         $text = $row['text'];

         echo "<span class=\"textdatum\">[$datum]: </span>";
         echo "<span class=\"textueber\">$titel</span>";
         echo "<br>";
         echo $text;
         }
?>

Jetzt das Problem. Die Session wird zwar übergeben, aber es ist am Schluss immer nur die ID des als letztes ausgelesenen Datensatzes vorhanden. Wie schaffe ich es, dass immer die richtige ID der Session übergeben wird?
danke schonmal
gruss
 
Warum die ID in der Session speichern, und nicht einfach per URL übergeben?
Es wird immer die ID des letzten Datensatzes ausgegeben, weil du wahrscheinlich die Session-Variable nach der while-Schleife schreibst.
 
ich schreibe die Session in der while-Schleife...hmm...wie kann ich denn das per URL übergeben?
danke schonmal
gruss
 
Daten über Url übergeben:

http://www.meineseite.de?der=1&die=2&er=5

$der = 1
$die = 2
$er = 5

Der erste Wert wird mit ? übergeben
alle anderen mit &

Beispiel:
Rufe deine Seite mit parameter ?auto=bmw
PHP:
$auto=$_GET[auto]; // Das get kannst dir auch sparen, nur wenn du sicher gehen willst
echo $auto; // gibt bmw aus

PHP:
<?php 
include("dbconnect.php"); 
session_start(); 
$id = $_GET[id]; // ?id muss uebergeben werden
echo $id; 
$sql = "SELECT * FROM news WHERE id = '$id'"; 
$select = mysql_query($sql); 
$menge = mysql_num_rows($select); 
while($row = mysql_fetch_array($select)) 
    { 
         $timestamp = $row["datum"]; 
         $monate = array( 
             1=>"Januar", 
             2=>"Februar", 
             3=>"März", 
             4=>"April", 
             5=>"Mai", 
             6=>"Juni", 
             7=>"Juli", 
             8=>"August", 
             9=>"September", 
             10=>"Oktober", 
             11=>"November", 
             12=>"Dezember"); 
    $tag = date("d", $timestamp); 
    $monat = date("m", $timestamp); 
         $jahr = date("Y", $timestamp); 
         $uhrzeit = date("H:i", $timestamp); 
    $mo_akt = $monate[$monat]; 
    $datum = "$tag"." "."$mo_akt"." "."$jahr"; 
         $titel = $row['titel']; 
         $text = $row['text']; 

         echo "<span class=\"textdatum\">[$datum]: </span>"; 
         echo "<span class=\"textueber\">$titel</span>"; 
         echo "<br>"; 
         echo $text; 
         } 
?>

PS wenns nicht hilft meldest dich!
 
Zuletzt bearbeitet von einem Moderator:
Zurück