Zur Navigation

einzelne seite in einem backend bearbeiten

1 tobi

hallo zusammen,

ich bräuchte ein wenig eure hilfe, gedankenanstosse, evtl. beispiele :)

ich würde gerne wissen, wie ich etwas realisieren kann. und zwar würde ich gerne einer person x ermöglichen, daten einzupflegen oder zu ändern und dies bei einer einzenen seite.

bisher habe ich dies selbst gemacht.
datei vom webspace runergeladen, geändert und wieder hochgeladen.
da ich den part aber abgeben möchte und derjenige keine ahnung hat, was es mit css, html, php etc auf sich hat, müßte ich irgendwie ein einfaches system oder so was in die richtung entwickeln/programmieren.
nur die frage was brauch ich dazu?

danke

mfg

28.07.2010 22:29

2 Jörg Kruse

Was soll den geändert werden, nur der Text der Seite? oder geht es auch noch um's Layout?

29.07.2010 00:25

3 tobi

ne ums layout geht es nicht, nur um den inhalt, also text

29.07.2010 12:55

4 Jörg Kruse

Dann kannst den Text in einer Datenbank oder in einer Textdatei speichern. Zur Bearbeitung lädst du diesen dann einfach in ein Formular.

29.07.2010 14:09

5 tobi

db würde ich dann wohl bevorzugen :)

dann brauch ich wohl einen bereich, in dem ich die texte erstellen kann, ggf texte bearbeiten oder sogar löschen kann, wenn z.b. veraltet

29.07.2010 16:50

6 Jörg Kruse

Das einfachste wäre ein htaccess Schutz. Ansonsten musst du noch ein Login integrieren

04.08.2010 01:12

7 tobi

wenn die fehlermeldung von hier (https://joergs-forum.de/fehlermeldung-warning-unknown-your-script-possibly-t-3712-1) weg ist, dann hab ich auf alle fälle mal ein login system

04.08.2010 17:36

8 tobi

ich habe beschlossen, dass loginsystem wegzulassen und werde das verzeichniss nur via .htaccess schützen.

nun aber zum bearbeiten. ich habe einige php dateien erstellt.
welches eine übersicht (index.php) hat.
jn_add.php = beitrag schreiben
jn_admin.php = übersicht zum editiern oder löschen
jn_edit.php = editierenseite
jn_delete.php = löschenseite

die frage nun, wie kann ich wenn jemand "www.123.de" in einen beitrag einträgt, dies später auch als link zeigen?
macht es sinn bzw. wie komplizeiert ist es einen online editor einzubauen?

index.php
<?php
error_reporting(E_ALL);    

//Datenbank verbinden
include "../../zugang.php.inc";

$sql = "SELECT * FROM jugendnews ORDER
BY id DESC";

$ausgabe=mysql_query($sql);
?>
<center><b>Jugend Aktuell</b><br>
<?php echo '<br><br><a href="jn_add.php">Eintrag Schreiben</a><br>'; ?>
<?php echo '<br><a href="jn_admin.php">Eintrag nachträglich bearbeiten</a><br>'; ?></center>
<?php
while ($Jugendnews = mysql_fetch_object ($ausgabe))

{
?>
<center>
<table border="0" cellpadding="0" cellspacing="1" width="451">
                <tr>
                    <td width="203"><b><?php echo($Jugendnews->Titel); ?></b></td>
                </tr>
                <tr>
                    <td colspan="2"><?php echo($Jugendnews->Inhalt); ?></td>
				</tr>
                <br>
                <br>
            </table>
        </center>
<?php }
?> 

jn_action.php
<?php
error_reporting(E_ALL);    

//Datenbank verbinden
include "../../zugang.php.inc";

$Titel= $_POST['Titel'];
$Inhalt= $_POST['Inhalt'];

$sql = "INSERT jugendnews (Titel,Inhalt) VALUES ('$Titel','$Inhalt')";

 if ((""== $Titel) OR(""== $Inhalt)) {
        echo "Fehler: Eintrag unvollständig.";
    } else {                        

  echo "Ihr Eintrag wurde hinzugefügt";
}
echo '<br/><a href="index.php">zurück zum Übersichtsseite</a>.';

$result = mysql_query($sql) OR              
die("Query: <pre>".$sql."</pre>\n".                  
"Antwoertchen: ".mysql_error());
?> 

jn_add.php
<form method="post" action="jn_action.php">
<table border="0" cellpadding="0" cellspacing="0" width="451">
            <tr>
                <td width="105">Titel</td>
                <td><input type="text" name="Titel" size="24"></td>
            </tr>
            <tr>
                <td width="105">Text</td>
                <td><textarea name="Inhalt" cols="40" rows="4"></textarea></td>
            </tr>
        </table>
<input type="submit" name="submitButtonName"><input type="reset">  

jn_admin.php
<?php
error_reporting(E_ALL);    

//Datenbank verbinden
include "../../zugang.php.inc";

$sql = "SELECT * FROM jugendnews ORDER BY id DESC";
$ausgabe=mysql_query($sql);
?><?php
while ($Jugendnews = mysql_fetch_object ($ausgabe))
{
?>
<center>
    <p>
    <form method="get" action="jn_edit.php">
    <table border="0" cellpadding="0" cellspacing="1" width="451">
                <tr>
                    <td width="203"><b><?php echo($Jugendnews->Titel); ?></b></td>
                </tr>
                <tr>
                    <td colspan="2"><?php echo($Jugendnews->Inhalt); ?></td>
        <tr>
            <td width="69">
                <div align="left">
                    <?php print "<a href=\"jn_edit.php?id=$Jugendnews->ID\">Editieren</a>."; ?></div>
            </td>
            <td>
                <div align="right">
                    <?php print "<a href=\"jn_delete.php?id=$Jugendnews->ID\">Löschen</a>."; ?></div>
            </td>
        </tr>
        <br>
    </table>
    </p>
</center>
<p><?php }
?>
</form>

jn_delete.php
<?php
error_reporting(E_ALL);    

//Datenbank verbinden
include "../../zugang.php.inc";

$sql = "SELECT * FROM jugendnews ORDER BY Name DESC";
$id = $_GET["id"];

echo $_GET['id'];

$sql = "DELETE FROM `jugendnews` WHERE `jugendnews`.`ID` =$id LIMIT 1";

echo '<br/><a href="jn_admin.php">zurück</a>.';

$result = mysql_query($sql) OR              
die("Query: <pre>".$sql."</pre>\n".                  
"Antwoertchen: ".mysql_error());
?> 

jn_edit.php
<?php
error_reporting(E_ALL);    

//Datenbank verbinden
include "../../zugang.php.inc";

$sql = "SELECT * FROM jugendnews ORDER
BY Name DESC";
////////////////////////////////////////
///// Hier nehmen wir die ID entgegen///
////////////////////////////////////////
$id = $_GET['id'];

$sql = "SELECT * FROM jugendnews WHERE ID ='$id'";
$ausgabe = mysql_query($sql);
$data = mysql_fetch_array($ausgabe);
?>
<form action="jn_editaction.php" method="post">
<input type="text" name="Titel" size="24" value="<?php echo $data['Titel']; ?>"><br>
<textarea cols="40" rows="5" name="Inhalt">
<?php    echo $data['Inhalt'];    ?>
</textarea><br>
<input type="submit" value="Senden">
<input type="hidden" name="id" value="<?php echo $data['ID'] ?>" />
</form>
<?php

$result = mysql_query($sql) OR              
die("Query: <pre>".$sql."</pre>\n".                  
"Antwoertchen: ".mysql_error());
?> 

jn_editaction.php
<?php
error_reporting(E_ALL);    

//Datenbank verbinden
include "../../zugang.php.inc";

$sql = "SELECT * FROM jugendnews ORDER BY Name DESC";
$inhalt = $_POST["Inhalt"];
$id = $_POST["id"];
$titel = $_POST['Titel'];

$sql="UPDATE jugendnews SET Inhalt = '".$inhalt."', Titel = '".$titel."' WHERE ID = ".$id;

echo '<br/><a href="jn_admin.php">zurück</a>.';


$result = mysql_query($sql) OR              
die("Query: <pre>".$sql."</pre>\n".                  
"Antwoertchen: ".mysql_error());
?> 

14.08.2010 18:32

9 Jörg Kruse

die frage nun, wie kann ich wenn jemand "www.123.de" in einen beitrag einträgt, dies später auch als link zeigen?

Das ist normalerweise eine Sache der Ausgabe - d.h. "www.123.de" wird so in die Datenbank eingetragen, und erst vor der Ausgabe umgewandelt. Dazu kannst du z.B. eine Funktion, die URLs in Links umwandelt, nach htmlspecialchars() anwenden

14.08.2010 23:09

10 tobi

das heißt, wenn der link komplett im text ist:

"Heute gab es ein erfolgreiches Turnier. Die kompletten Ergebnisse sind hier: www.123.de/test.php"

dann kann man es umwandeln lassen?

14.08.2010 23:16 | geändert: 14.08.2010 23:18