Ändern von Daten im MySQL via PHP

madirfan

Erfahrenes Mitglied
hallo, ich hab eine datenbank mit einigen inhaten.
ich kann alle inhalte via PHP auslesehen.

<?php

$host = "localhost"; // Adresse des Datenbankservers, meistens localhost
$user = "****"; // Ihr MySQL Benutzername
$pass = "****"; // Ihr MySQL Passwort
$db = "****"; // Name der Datenbank

mysql_connect($host, $user, $pass);
mysql_select_db($db);

$sql = "
SELECT * FROM urlaub
";

$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . mysql_error());
}

echo '<table border="1">';
while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
{
echo "<tr>";
echo "<td>". $zeile['id'] . "</td>";
echo "<td>". $zeile['von'] . "</td>";
echo "<td>". $zeile['bis'] . "</td>";
echo "<td>". $zeile['dauer'] . "</td>";
echo "<td>". $zeile['tm'] . "</td>";
echo "<td>". $zeile['vorheriger_resturlaub'] . "</td>";
echo "<td>". $zeile['jetziger_urlaub'] . "</td>";
echo "<td>". $zeile['gesamt_urlaub'] . "</td>";
echo "<td>". $zeile['bereits_genommen'] . "</td>";
echo "<td>". $zeile['verfallen'] . "</td>";
echo "<td>". $zeile['resturlaub'] . "</td>";
echo "<td>". $zeile['unterschrieft'] . "</td>";
echo "<td>". $zeile['bemerkung'] . "</td>";
echo "</tr>";
}
echo "</table>";

mysql_free_result( $db_erg );
?>

sobald die daten angezeigt werden, möchte ich sie direkt via PHP gleich ändern.
wie koennte man das machen..gibts dazu ein script?
 
wie in meine code kann ich die ganzen eingaben soforz sehene.
ich brauch ein beispiel script.. wo ich die möglichkeit habe, die werte zu ändern.. via FORM..

ich möchte ein aenderungsbotton.. wenn ich auf den botton klick, bekomm eine seite wo ich
genau das ausgewählte "block" aendern kann..
 
@madirfan

Was ist daran das Problem.
Ich werde hier bestimmt kein Script für dich schreiben, aber ich sage dir einfach wie es funktioniert.
Warum machst du nicht einfach Formularfelder anstatt echo "<td>". $zeile['von'] . "</td>";
mit dem Wert aus der Datenbank und einem Namen mit [] hinten dran

also zum Beispiel:
PHP:
echo "<td><input type=\"text\" name=\"fieldd[]\" value=\"". $zeile['von'] . "\" /></td>";

Durch das [] im namen bekommst du ein Array von diesem Feld zurück und kannst dann bei der Auswertung mit foreach oder for alle eingegebenen Werte durch "browsen" und dann mit einem mysql_query und UPDATE (siehe post oben) aktualisieren.
 
ist schon klar das du den script nicht fuer mich schreiben kannst.. das wollt ich auch nicht..denn noch danke fuer den code.

ich wllt eigenlich so habe, wenn ich z.b auf den feld ID klick, dann hab ich dir möglichkeit diesn parameter zu ändern. sobald ich es geändert habe und wo anders klick.. wird die geaenderte eingabe sofort in der datenbank aktualisiert.
 
Wenn ich die richtig verstehe - du also nicht vorher auf einen "Speichern"-Button oder ähnliches klicken willst - wird das ganze sehr viel komplizierter (Stichwort AJAX). Nimm einfach mal ein ganz simples Beispiel mit einem Formular, das einfach nur ein Feld in der DB ändert. Erweitern kannst das ganze dann immernoch!
Gruß
 
Zurück