Problem mit Artikelverwaltung

boardster

Mitglied
Hallo,

ich habe das Artikelverwaltungsscript von php4-forum getestet ( http://www.php4-forum.de/beispiele/anwendung_artikel.htm ) und leider feststellen, dass der eingegebene Inhalt nicht angezeigt wird, sondern nur der Titel. Muss ich das Script selbst noch modifizieren?

Hier das Script:

Code:
create table artikel 
( 
nr INT NOT NULL AUTO_INCREMENT, 
titel character (255), 
inhalt text, 
PRIMARY KEY (nr) 
);

PHP:
<?php 

// Systemeinstellungen 
    $id = "root"; 
    $pw = ""; 
    $host = "localhost"; 
    $database = "test"; 
    $table = "artikel"; 

// Einstellungen Ende 

$conn_id = mysql_connect($host,$id,$pw); 
mysql_select_db($database,$conn_id); 

// Löscht einen Artikel aus der Datenbank 
if ($action == "loeschen") { 
  mysql_query("delete from $table where nr = '$nr'"); 
  $meldung = "Der Artikel wurde gelöscht."; 

// Aktualisiert einen Datensatz 
} elseif($action == "save") { 
  mysql_query("update $table set titel = '$titel', inhalt = '$inhalt' where nr = '$nr'"); 
  $meldung = "Der Artikel wurde upgedated."; 

// Fügt einen neuen Artikel hinzu 
} elseif ($action == "neu") { 
  mysql_query("insert into $table (titel,inhalt) VALUES ('$titel','$inhalt')"); 
  $meldung = "Der Artikel wurde hinzugefügt."; 

// Selektiert den ausgewählten Artikel zum Updaten 
} elseif ($action == "update") { 

  $result = mysql_query("select * from $table where nr = '".$nr."'"); 
  $titel = mysql_result($result,0,"titel"); 
  $inhalt = mysql_result($result,0,"inhalt"); 

?> 

  <table> 
    <form action=<?php echo $PHP_SELF; ?> method=post> 
    <input type=hidden name=action value="save"> 
    <input type=hidden name=nr VALUE="<? echo $nr ?>"> 
  <tr> 
    <td>Titel</td> 
    <td><input type=text name="titel" value="<? echo $titel ?>"></td> 
  </tr><tr> 
    <td>Text</td> 
    <td><textarea name="inhalt"><? echo $inhalt ?></textarea></td> 
  </tr><tr> 
    <td> </td> 
    <TD><input type=submit value="Artikel Updaten"></form></td> 
  </tr> 
  </table><p> 

<?php 

// Formular für ein neues Produkt 
} elseif($action == "formneu" ) { 

?> 
  <table> 
    <form action=<?php echo $PHP_SELF; ?> method=post> 
    <input type=hidden name=action value="neu"> 
  <tr> 
    <td>Titel</td> 
    <td><input type=text name="titel"></td> 
  </tr><tr> 
    <td>Text</td> 
    <td><textarea name="inhalt"></textarea></td> 
  </tr><tr> 
    <td> </td> 
    <TD><input type=submit value="Neuen Artikel hinzufügen"></form></td> 
  </tr> 
  </table><p> 

<?php 
// Gibt alle Datensätze aus der Datenbank aus. 
} else { 

  if (!$meldung) $meldung = "Optionen<P>"; 
  echo "$meldung"; 
  echo "<ol><b>Alle Artikeln in Übersicht:</b> "; 

  $result = mysql_query("select * from $table"); 
  if ($num = mysql_num_rows($result)) { 
    // Ausgabe der Datensätze, wenn vorhanden 
    for($i=0;$i < $num; $i++) { 
      $nr = mysql_result($result,$i,"nr"); 
      $titel = mysql_result($result,$i,"titel"); 
      echo "<li> $titel - <A href=\"$PHP_SELF?nr=$nr&action=update\">Update</A>"; 
      echo "- <a href=\"$PHP_SELF?nr=$nr&action=loeschen\">Löschen</a></li>"; 
    } 
  } else echo "<li>Es gibt keine Datensätze in der Datenbank<p>"; 
  echo "</ol>"; 
} 
echo "<p><a href=$PHP_SELF>Zur Startseite</a>"; 
echo " - <a href=$PHP_SELF?action=formneu>Neuen Artikel einfügen</a>"; 

?>
 
wenn ich das richtig sehe, dann wird eine Übersicht aller Artikel (nur mit dem Titel) angezeigt, und die Details siehst Du, wenn Du den Titel anklickst, dieser ist als Link ausgelegt. ;)


Dunsti
 
jo stimmt, jetzt seh ich's auch .... da is nur der Titel, und ein Link zum Updaten und Löschen.

Da musst Du wohl das Script tatsächlich noch modifizieren:

anstatt:
PHP:
for($i=0;$i < $num; $i++) { 
  $nr = mysql_result($result,$i,"nr"); 
  $titel = mysql_result($result,$i,"titel"); 
  echo "<li> $titel - <A href=\"$PHP_SELF?nr=$nr&action=update\">Update</A>"; 
  echo "- <a href=\"$PHP_SELF?nr=$nr&action=loeschen\">Löschen</a></li>"; 
}

dieses:
PHP:
for($i=0;$i < $num; $i++) { 
  $nr = mysql_result($result,$i,"nr"); 
  $titel = mysql_result($result,$i,"titel"); 
  $inhalt = mysql_result($result,$i,"inhalt"); 
  echo "<li> $titel - <A href=\"$PHP_SELF?nr=$nr&action=update\">Update</A>"; 
  echo "- <a href=\"$PHP_SELF?nr=$nr&action=loeschen\">Löschen</a><br>$inhalt</li>"; 
}

oder eben anders formatiert ;)


Dunsti
 
Zurück