Hallo allemaal.
Ik heb nu de nodige PHP en MySQL kennis en ik wil graag een simpele blog maken, waar je (natuurlijk) de posts kan zien op een pagina, en een aparte pagina waar je een post kan 'maken' en 'versturen'. Nu wil ik weten is dit handiger met of zonder database en waarom? En kan iemand een stappenplan geven hoe ik het moet maken? Dus bijvoorbeeld : 1. Maak dit. 2. Doe dat etc.

Alvast bedankt,
MVG.
Tele text op 18/07/2011 15:26:25

Hallo allemaal.
Ik heb nu de nodige PHP en MySQL kennis en ik wil graag een simpele blog maken,


En kan iemand een stappenplan geven hoe ik het moet maken? Dus bijvoorbeeld : 1. Maak dit. 2. Doe dat etc.
MVG.

Heb je nu wel of geen PHP/MySQL ervaring?
Als je ervaring hebt met MySQL en PHP dan kan je toch een database-structuur bouwen en met formuliertjes in PHP dingen invoegen?
Ik heb een tutorial gevolgd met ruwweg alleen MySQL. Ik snap nu niet waar je het formuliertje juist moet plaatsen.
Daar waar jij het wilt op een logische plek? Als het bedoeld is voor het plaatsen van een blog-artikel, dan is het zere gewenst als het beveiligd is. En als het voor het reageren is op blog-artikelen, dan plaatje het formuliertje onder het artikel.


Ik heb een tutorial gevolgd met ruwweg alleen MySQL

Dan zou ik zeker ook eens PHP leren. Aan alleen MySQL heb je niets.

Ik heb een tutorial gevolgd met ruwweg alleen MySQL

Dan zou ik zeker ook eens PHP leren. Aan alleen MySQL heb je niets.
[/quote]

Je begrijpt het verkeerd. PHP en MySQL heb ik apart geleerd.
Maar als je MySQL en PHP kent, dan is een formuliertje toch geen probleem meer lijkt me?
Ik heb nu dit in de body bij voegtoe.php, klopt dit?


<form action="index.php" method="POST">
<table>
<input type="hidden" name="submit" value="yes">
Titel :<textarea rows="1" name="title" cols="42">Unkwown</textarea><br>
Bericht :<textarea rows="1" name="text" cols="42">Unkwown</textarea><br>
<input type="submit" vale=" Voeg toe ">
</table>
</form>

<?php


$db_config['server'] = '**********';
$db_config['username'] = '**********';
$db_config['password'] = '*********';

$link = mysql_connect($db_config['server'], $db_config['username'], $db_config['password']) or die(mysql_error());

if ($_POST['submit']) {
    $title = addslashes($_POST['title']);
    $text = addslashes($_POST['text']);

$insert = "INSERT INTO `blog`(title, text) VALUES('$title', '$text')";

mysql_query($insert) or die(mysql_error());

echo "Bericht toegevoegd.";
}

?>

Probeer het?

Even wat tips:
- Gebruik if($_SERVER['REQUEST_METHOD']=="POST") { om te controleren of een formulier verstuurd is.
- Gebruik geen addslashes() om variabelen in een mysql_query te escapen, maar mysql_real_escape_string(). Je wilt je data niet verneuken.
- Gebruik fatsoenlijke foutafhandeling zonder die() technieken voor je mysql_query(). je script moet niet stoppen als het niet gelukt is.
- Variabelen buiten quotes (zie je query).
- Plaats je connectie liever in een centraal bestand welke je altijd als eerste includeert. Dit geldt ook voor de inlog-gegevens. Of vind je het leuk om bij het aanpassen van deze gegevens 100 bestanden straks aan te passen?
Regel 3 is onnodig.
Regel 6 mist de 'u' van 'value'.
Bedankt voor de tips, ik loop alleen vast bij 1 ding:
Als ik de gegevens naar de database stuur, hoe weet hij dan welke 'post' van alle 'posts' hij moet sturen?
Dat snap ik niet. Je hebt toch maar één formulier?

Reageren