Umsetzung eines templates

statics

Grünschnabel
Guten Morgen Leute :)

Ich möchte folgendes probieren zu realisieren:

Man kann etwas auf meiner Seite eingeben wie in einem Kontaktformular..jedoch soll es mir keine Email schicken sondern die Daten sollen in ein vorgefertigtes template geschrieben werden, sodass man es dann zB in einer Kategorie von mir findet. Ich hoffe ich habe das verständlich erklärt...Man könnte es so ähnlich sehen wie wenn jemand ein Tutorial schreibt und es dann automatisch unter tutorials gelistet wird sobald er auf senden klickt!

Hat jemand eine Ahnung ob es sowas schon vorgefertigt gibt? Weil meine Kenntnisse reichen da bei weitem nicht :/ Bin auch dankbar sollte es Tutorials dafür geben oder wenn mir wer sagt wie man sowas nennt das ich es zumindest googlen kann...weil meine bisherige Suche ergab nichts :/

lg
 
super Seite muss ich sagen...hab mich da jetzt mal eingelesen und so ziemlich alles verstanden :)

Jetzt weiß ich folgendes jedoch nicht...

Jetzt kann man zwar Sachen eintragen und auch wieder ausgeben lassen, jedoch möchte ich bevor man auf den Artikel der gerade eingegeben worden ist kommt...ihn automatisch als Link erscheinen lassen.

Artikellink -> Artikel

und der Artikellink soll halt durch die DB auf einer Seite mit den anderen Links erscheinen...sodass ich nicht jedes mal wenn jemand einen Artikel erstellt ich meine Seite aktualisieren muss :D
 
PHP:
$sql = "INSERT INTO...";
$result = mysql_query($sql);
$id = mysql_insert_id();
echo '<a href="www.meine-seite.de?artikel='.$id.'">Zum Artikel</a>';


//andere Seite
$id = isset($_GET['id'])? intval($_GET['id']) : 0;
if( $id > 0 ){
  $sql = "SELECT * FROM artikel WHERE artikel_id = ".$id;
  $result = mysql_query($sql);
  //Dann ausgeben
}

mysql_insert_id()
intval()
 
erstmal danke für die Mühe! Jedoch stehe ich etwas auf dem Schlauch :/

nachdem ich etwas in der Datenbank bereits habe sollte er mir da nicht etwas anzeigen oder muss ich noch etwas anpassen?

PHP:
$sql = "INSERT INTO...";
$result = mysql_query($sql);
$id = mysql_insert_id();
echo '<a href="www.acties.at?test='.$id.'">Zum Artikel</a>';


//andere Seite
$id = isset($_GET['id'])? intval($_GET['id']) : 0;
if( $id > 0 ){
  $sql = "SELECT * FROM acties WHERE id = ".$id;
  $result = mysql_query($sql);
  //Dann ausgeben
}  

?>
 
Tut mir leid, das war etwas undeutlich formuliert.
PHP:
// Diesen Query musst du natürlich für deine Datenbank anpassen. Damit fügst du einen Artikel ein
$sql = "INSERT INTO..."; 
//Der Query wird ausgeführt
$result = mysql_query($sql); 
//Wir fragen die ID ab, die per auto_increment automatisch gesetzt wurde
$id = mysql_insert_id(); 
//Hier generieren wir den Link
echo '<a href="www.acties.at?test='.$id.'">Zum Artikel</a>'; 


//andere Seite, eine Neue Seite (von mir aus auch die gleiche), auf der der Artikel mit einer bestimmten ID angezeigt werden soll

//Wir lesen die ID aus. Wenn keine vorhanden ist, weisen wir die ID 0 zu.
$id = isset($_GET['id'])? intval($_GET['id']) : 0; 
// Wenn wir eine ID übergeben bekommen haben
if( $id > 0 ){ 
  //Lesen wir einen Datensatz aus
  $sql = "SELECT * FROM acties WHERE id = ".$id; 
  $result = mysql_query($sql); 
  //Dann ausgeben, den Code dafür musst du noch ergänzen
}   

?>
 
so ich hab das ganze mal etwas umgebastelt und vielleicht kannst du mir das mit den ID's nochmal erklären oder den code so ausbessern das ich das endlich verstehe :D

hier die beiden code Dateien (einmal Eingabe und einmal Ausgabe)

Eingabe:

PHP:
<?php
$db_host = "..";
$db_user = "...";
$db_pass = "...";
$db_name = "...";
 
if (isset( $_POST['eintragen'] ))
{
    // Maskierende Slashes aus POST entfernen
    $_POST = get_magic_quotes_gpc() ? array_map( 'stripslashes', $_POST ) : $_POST;
 
    // Inhalte der Felder aus POST holen
    $adresse = $_POST['adresse'];
    $kontakt = $_POST['kontakt'];
    $beschreibung = $_POST['beschreibung'];
 
    $conID = mysql_connect( $db_host, $db_user, $db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" );
    if ($conID)
    {
        mysql_select_db( $db_name, $conID );
    }
 
    // Anfrage zusammenstellen der an die DB geschickt werden soll
    $sql = "INSERT INTO `acties`
                (`adresse`, `kontakt`, `beschreibung`)
            VALUES(
                '" .mysql_real_escape_string( $adresse ). "',
                '" .mysql_real_escape_string( $kontakt ). "',
                '" .mysql_real_escape_string( $beschreibung ). "'
                )";
    // Schickt die Anfrage an die DB und schreibt die Daten in die Tabelle
    mysql_query( $sql );
    // Pruefen ob der neue Datensatz tatsaechlich eingefuegt wurde
    if (mysql_affected_rows() == 1)
    {
        echo "<h3>Der Datensatz wurde hinzugefügt!</h3>";
    
    }
    else
    {
        echo '<h3>Der Datensatz konnte <span class="hinweis">nicht</span> hinzugefügt werden!</h3>';
        
    }
}
?>


<p><strong>actie eintragen:</strong></p>
<form name="formular" action="?site=test" method="post">

<table style="width:500px">
<tr>
	<td style="width:150px"><strong>Adresse:</strong></td>
	<td><input name="adresse" type="text" id="adresse" value="<?php echo $adresse;	?>" size="40" maxlength="100" /></td>
</tr>
<tr>
	<td style="width:150px"><strong>Kontakt:</strong><br /></td>
	<td><input name="kontakt" type="text" id="kontakt" value="<?php echo $kontakt; ?>" size="40" maxlength="100" /></td>
</tr>
<tr>
	<td style="width:150px"><strong>Beschreibung:</strong></td>
	<td><input name="beschreibung" type="text" id="beschreibung" value="<?php echo $beschreibung; ?>" size="40" maxlength="50" /></td>
</tr>
<tr>

<tr>
<td style="width:150px">&nbsp;</td>
	<td>&nbsp;</td>
</tr>
<tr>
	<td style="width:150px">&nbsp;</td>
	<td>&nbsp;</td>
</tr>
<tr>
	<td style="width:150px">&nbsp;</td>
	<td><input type="submit" name="eintragen" id="eintragen" value="Abschicken" />

</tr>
</table>
</form>

Ausgabe:

PHP:
<?php
$db_host = "...";
$db_user = "...";
$db_pass = "...";
$db_name = "...";
 
// Verbindung oeffnen und Datenbank ausweahlen
$conID = mysql_connect( $db_host, $db_user, $db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" );
if ($conID)
{
    mysql_select_db( $db_name, $conID );
}
 
// Anfrage zusammenstellen um die Datensaetze auszulesen
$sql = "SELECT `adresse`, `beschreibung`, `kontakt` FROM `acties`";
// Anfrage an die DB schicken und die Rueckmeldung in eine Variable ablegen
$abfrageergebnis = mysql_query( $sql, $conID );
// Ermitteln wie viele Datensaetzen gefunden wurden
$anzahl = mysql_num_rows( $abfrageergebnis );
echo '<p>Es wurden <span class="hinweis">' .$anzahl. '</span> Datensätze gefunden!</p>';
 
// Tabelle erstellen fuer die Ausgabe
echo '<table border="1">';
echo "<tr><th>adresse</th><th>kontakt</th><th>beschreibung</th></tr>";

while ($datensatz = mysql_fetch_array( $abfrageergebnis ))
{    
    echo "<tr>";
    echo "<td>" .htmlspecialchars( $datensatz['adresse'] ). "</td>";
    echo "<td>" .htmlspecialchars( $datensatz['kontakt'] ). "</td>";
    echo "<td>" .htmlspecialchars( $datensatz['beschreibung'] ). "</td>";
    echo "</tr>";
}
// Tabelle schliessen
echo "</table>";
 
?>


Ich hoffe jemand kann mir helfen :)

lg
 
Zurück