code: To-Do

Codes

To-Do Liste:

Php code zum eine Verbindung mit der Datenbank herzustellen.
<?php
session_start();

$pdo = new PDO('mysql:host=localhost;dbname=db_beispiel', 'max', 'muster');
?>
Anstatt max gebt Ihr euer Datenbank Username ein und anstatt muster euer Passwort.
Hier das html Formular um einen Eintrag zu machen.
z.B.: formular.html
<form action="" method="post">
User:<br>
<input type="text" name="usr"><br>
Aufgabe:<br>
<textarea cols="100" rows="9" name="aufgabe"></textarea><br>
Priorität:<br>
<input type="text" name="pri"><br>
<input type="submit" value="Hinzufügen"><br>
</form>
Der php code um den Eintrag in die Tabelle zu schreiben.
z.B.: eintrag.php
<?php

$usr = $_POST['usr'];
$aufgabe = $_POST['aufgabe'];
$pri = $_POST['pri'];

$statement = $pdo->prepare("INSERT INTO todo (usr, aufgabe, pri) VALUES (:usr, :aufgabe, :pri)");
$result = $statement->execute(array('usr' => $usr, 'aufgabe' => $aufgabe, 'pri' => $pri));

if($result){
echo 'Erfolgreich hinzugefügt';
}

else if ($usr != ''){
echo 'Ein Fehler ist aufgetreten!';
}

$sql = "SELECT * FROM todo";
foreach ($pdo->query($sql) as $row) {
$id = $row['id'];
}

if(isset($_POST['updt'])){

$status = htmlentities($_POST['sti']);

$ids = $_POST['ids'];
if($status != ''){

$statement = $pdo->prepare("UPDATE todo SET status = :status WHERE id = '$ids'");
$result = $statement->execute(array('status' => $status));

if(isset($result)) {
echo 'Der Status wurde erfolgreich geändert.';
} else {
echo 'Beim Abspeichern ist leider ein Fehler aufgetreten';
}
}
}

if(isset($_POST['lsdt'])){

$ls = $_POST['ls'];

if($ls != ''){
$statement = $pdo->prepare("DELETE FROM todo WHERE id = '$ls'");
$statement->execute(array('0'));
}
}

?>
Der Code für die Ausgaben der Einträge. Eine Tabelle mit der man auch den Status der Aufgabe ändern kann. PHP und HTML Code gemischt.
z.B.: ausgabe.php
<table border="1">
<tr bgcolor="#A60707">
<th width="10%">
User
</th>
<th width="45%">
Aufgabe
</th>
<th width="10%">
Priorität
</th>
<th width="10%">
Datum
</th>
<th width="10%">
Status
</th>
<th width="15%">
Bearbeiten
</th>
</tr>

<?php

$max = $id+1;

for($idr=1; $idr < $max; $idr++){
if($idr >= $max)
{

$sql = "SELECT * FROM todo WHERE id = '$idr'";

foreach ($pdo->query($sql) as $row) {

$ids = $row['id'];
$usr = $row['usr'];
$aufgabe = nl2br($row['aufgabe']);
$pri = $row['pri'];
$time = $row['time'];
$status1 = $row['status'];
}

if($status1 == ''){
$status1 = 'offen';
}

}
if ($idr == $ids){
?>
<tr>
<th>
<?php
echo $usr;
?>
</th>
<th style="text-align:left;padding-left:10px;">
<?php
echo $aufgabe;
?>
</th>
<th>
<?php
echo $pri;
?>
</th>
<th>
<?php
echo $time;
?>
</th>
<th>
<?php
if ($status1 == 'offen'){
echo '<p style="text-align:center;color:#A60707;">'.$status1.'</p>';
}

else if($status1 == 'überprüfen'){
echo '<p style="text-align:center;color:white;">'.$status1.'</p>';
}

else if ($status1 == 'erledigt') {
echo '<p style="text-align:center;color:green;">'.$status1.'</p>';
}

else{
echo '<p style="text-align:center;color:black;">'.$status1.'</p>';
}

?>

</t>

<th>
<form action="" method="post">
<input type="hidden" name="ids" value="<?php echo $ids; ?>">
Status:
<input type="text" size="10" name="sti">
<input type="submit" name ="updt" value="update">
<input type="hidden" name="ls" value="<?php echo $ids; ?>">
<input type="submit" name="lsdt" value="löschen">
</form>
</th>
</tr>

<?php
}
}
?>
</table>

Nun muss noch eine Tabelle erstellt werden
Ich habe sie todo genant. Folgende Einträge müssen gemacht werden.
Tabelle-->todo
id , int(11)
usr , varchar(100)
aufgabe, varchar(2000)
pri , varchar(100)
time , timestamp , CURRENT_TIMESTAMP
status , varchar(100)

Um das dann alles in einer Datei einzubinden erstellen wir eine index.php.
<?php
session_start();

$pdo = new PDO('mysql:host=localhost;dbname=db_beispiel', 'max', 'muster');

include 'formular.html';
include 'eintrag.php';
include 'ausgabe.php';
?>
Marc Disch Blog Vefko