• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Mini-Blogsystem mit mySQL und PHP

iMacuser91

Kaiser Wilhelm
Registriert
21.12.06
Beiträge
174
Guten Tag,

ich wollte mir ein Mini-Blogsystem selber schreiben, da ich es so am ehesten an meine Wünsche anpassen kann.
Alles soll insgesamt auf 3 Dateien beruhen: blog.php, formular.php und postcount.php.

blog.php ist die Startseite und da sollen x Einträge dargestellt werden, formular.php ist die Datei, mit der ich den Eintrag und die zugehörigen Informationen an die Datenbank schicke und in postcount.php wird immer die letzte Post-ID geschrieben, damit ich (und das System) weiß, wie viele Einträge es schon gibt.

Nun bin ich mit dem Formular schon fast fertig und es sieht so aus:
Code:
<html>
	<head>
		<title>Blog Formular</title>
	</head>
	<body>
		<div id="main">
			<h1>Blog Formular</h1>
			<?php
				include('postcount.php');
				$author_retry = "";
				$blogpost_retry = "";
				$password_retry = "";
				$blogpostcount1 = $blogpostcount + 1;
	
				if($_POST != false){
					$author_retry = $_POST["author"];
					$blogpost_retry = $_POST["blogpost"];
					$password_retry = $_POST["password"];
				}	
			?>		
			<form action="<?php echo $_SERVER["PHP_SELF"] ?>" method="post">
				Latest Post ID: <?php echo $blogpostcount ?><br />
				Post-ID: 	<input name="postid" type="text" value="<?php echo $blogpostcount1 ?>" size="4" />
				Year: 		<input name="year" type="text" value="<?php echo date(Y) ?>" size="4" />
				Month: 		<input name="month" type="text" value="<?php echo date(m) ?>" size="2" />
				Day: 		<input name="day" type="text" value="<?php echo date(d) ?>" size="2" /><br />
				Author: 	<input name="author" type="text" value="<?php echo htmlspecialchars($author_retry) ?>" size="20" /><br />
				Content:	<br /><textarea name="blogpost" rows="10" cols="40"><?php echo htmlspecialchars($blogpost_retry) ?></textarea><br />
				Password: 	<input name="password" type="password" value="<?php echo htmlspecialchars($password_retry) ?>" size="10" />
				<input type="reset" /><input type="submit" />
			</form>
			<?php
				if(!empty($_POST['blogpost']) and !empty($_POST['author'])){
					if($_POST['password'] == "qwertz"){
						$dbhost = 'localhost';
						$dbuser = 'root';
						$dbpass = '';
						$dbname = 'blogtest';
					/*
						$db_connection = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to database');
						mysql_select_db($dbname) or die('Cannot select database');
						
					*/	
						$TheFile = "postcount.php";
						$openTheFile = fopen($TheFile, 'w+') or die("Can't open $TheFile");
						$FileContent = "<?php \$blogpostcount = $blogpostcount1; ?>";
						fwrite($openTheFile, $FileContent);
						fclose($openTheFile);
					/*
						mysql_close($db_connection);
					*/
					} else {
						echo "<p>Password required.</p>";
					}
				} else {
					echo "<p>Blogpost OR Author is missing.</p>";
				}
			?>
		</div>
	</body>
</html>

Jetzt möchte ich nur wissen, wie ich mit PHP eine Tabelle anlegen kann, in der die ID, das Datum (Jahr, Monat und Tag erstmal separat), der Autor und der Inhalt mehrerer Blogeinträge gespeichert werden und wie ich das dann auf der Startseite anzeigen lassen kann.
Das wäre dann mein lange herausgezögerter Einstieg in mySQL.
 

TaTonka

Neuer Berner Rosenapfel
Registriert
19.03.06
Beiträge
1.975
schau dir mal http://tut.php-quake.net an.
für die rudimentäre verwaltung der DB kann ich dir phpmyadmin empfehlen. damit kannst du die tabellen anlegen und so. darauf schreibend und lesend zugreifen tust du dann über die scripte.
 
  • Like
Reaktionen: iMacuser91

iMacuser91

Kaiser Wilhelm
Registriert
21.12.06
Beiträge
174
Kenne ich beides, ich hab es auch schon geschafft eine leere Tabelle anzulegen.

Werde nochmal nachgucken.

Danke


EDIT: Es geht alles und das Problem wäre damit gelöst.
 
Zuletzt bearbeitet: