Hallo Boardies,
ich bin erst seit heute bei euch registriert, und habe mich durch verschiedene Tutorials gelesen.
Und komme dennoch keinen Meter mehr weiter.
Mein Vorhaben:
Teampage mit Bildupload in eine Datenbank mit späteren Auslesen.
Mein Problem:
Das Formular funktioniert soweit,
jedoch,es können keine Daten an die Datenbank geschickt werden,
Grund : ich denke, das ich einen Fehler drin habe. Nur weiss ich nicht mehr weiter.
Das ist die SQL
Das ist mein kompletter Quellcode, und ich würde mich freuen, wenn ihr mir helfen könntet.
ich bin erst seit heute bei euch registriert, und habe mich durch verschiedene Tutorials gelesen.
Und komme dennoch keinen Meter mehr weiter.
Mein Vorhaben:
Teampage mit Bildupload in eine Datenbank mit späteren Auslesen.
Mein Problem:
Das Formular funktioniert soweit,
jedoch,es können keine Daten an die Datenbank geschickt werden,
Grund : ich denke, das ich einen Fehler drin habe. Nur weiss ich nicht mehr weiter.
PHP-Code:
<?php
###### Config-Datei
$db_host = "localhost"; // Datenbank-Server
$db_user = "root"; // Benutzer
$db_pass = ""; // Passwort
$db_name = "test"; // Datenbank-Name
/// Hier noch den Zielordner angeben
$zielorg = "../teampage/uploads/";
/// Ab hier ist nichts mehr zu ändern!
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
$bild = $_FILES['bild'];
$name = $_POST['name'];
$nickname = $_POST['nickname'];
$alter = (int) $_POST['alter'];
$wohnort = $_POST['wohnort'];
$msn = $_POST['msn'];
$geschlecht = $_POST['geschlecht'];
$teampage = $_POST['teampage'];
$member = isset( $_POST['moderator'] ) ? 0 : 1;
##
##Check ob alles passt
##
// Sind alle Eingaben durch die Validierung gekommen werden sie in die DB geschrieben
// 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 der an die DB geschickt werden soll
$sql = "INSERT INTO `test`
(`bild`,`name`, `nickname`, `alter`, `wohnort`, `msn`, `geschlecht`, `teampage`, `moderator`)
VALUES(
" .$bild. ",
'" .mysql_real_escape_string( $name ). "',
'" .mysql_real_escape_string( $nickname ). "',
" .$alter. ",
'" .mysql_real_escape_string( $wohnort ). "',
'" .mysql_real_escape_string( $msn ). "',
'" .mysql_real_escape_string( $geschlecht ). "',
'" .mysql_real_escape_string( $teampage ). "',
" .$member. "
)";
// 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>";
// Hier kann weiterer Code stehen der ausgefuehrt werden soll
// wenn ein Eintrag erfolgreich war. z.B. Email an den Admin schicken
// der ueber den neuen Eintrag informiert
}
else
{
echo "<h3>Der Datensatz konnte <strong>nicht</strong> hinzugefügt werden!</h3>";
// Hier koennen Massnahmen ergriffen werden die ueber den Misserfolg informieren
// wie z.B. den Benutzer darueber zu informieren, dem Admin eine Mail schicken
// damit er sich um den Fehler kuemmern kann, etc pp
}
}
function uploader($fotofile, $fotofile_name, $fotofile_type)
{
if($fotofile_type != 'image/jpeg' && $fotofile_type != 'image/pjpeg')
{
return $upload_log = 'Die Datei '.$fotofile_name.' ist nicht vom Typ Jpeg, sondern $fotofile_type!';
}
// Angabe Dateiendung
$datei_ende = '.jpg';
// Foto speichern
$zielorg .= substr($fotofile_name,0,strrpos($fotofile_name,'.')).$datei_ende;
if(file_exists($zielorg))
{
return $upload_log = 'Die Datei '.$fotofile_name.' exsitiert schon auf dem Server!';
}
if(!move_uploaded_file($fotofile, $zielorg))
{
return $upload_log = 'Ein Fehler beim Kopieren der Datei '.$fotofile_name.' ist aufgetreten!';
}
return $upload_log = $zielorg;
}
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formularinhalt in eine Datenbank schreiben</title>
</head>
<body>
<?
echo
'<form name="formular" enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'?action=upload"
method="post" name="formular" id="formular">';
?>
<table border="1" bordercolor="#000" cellspacing="1" cellpadding="2" width="100%">
<tr>
<td width="34%" align="left" valign="top">Bild-Datei</td>
<td width="66%" align="right" valign="top">
<input name="bild" type="file" id="bild" size="28">
</td>
<tr>
<td width="34%" align="left" valign="top">Name:</td>
<td width="66%" align="right" valign="top">
<input type="text" name="name" id="name" size="50" maxlength="60" value="" />
</td>
<tr>
<td width="34%" align="left" valign="top">Nickname:</td>
<td width="66%" align="right" valign="top">
<input type="text" name="nickname" id="nickname" size="50" maxlength="60" value="" />
</td>
<tr>
<td width="34%" align="left" valign="top">Altersangabe:</td>
<td width="66%" align="right" valign="top"><select name="alter" id="alter">
<?php for ($i=16; $i<60; $i++) { echo "<option>{$i}</option>"; } ?></select>
</td>
<tr>
<td width="34%" align="left" valign="top">Wohnort :</td>
<td width="66%" align="right" valign="top">
<input type="text" name="wohnort" id="wohnort" size="50" maxlength="60" value="" />
</td>
<tr>
<td width="34%" align="left" valign="top">MSN-Nickname :</td>
<td width="66%" align="right" valign="top">
<input type="text" name="msn" id="msn" size="50" maxlength="60" value="" />
</td>
<tr>
<td width="34%" align="left" valign="top">Geschlechtsangabe:</td>
<td width="66%" align="right" valign="top">
<input type="radio" name="geschlecht" id="geschlecht_1" value="männlich" checked="checked" />
Männchen
<input type="radio" name="geschlecht" id="geschlecht_2" value="weiblich" />
Weibchen</td>
<tr>
<td width="34%" align="left" valign="top">Link zur Nickpage :</td>
<td width="66%" align="right" valign="top">
<input type="text" name="teampage" id="teampage" size="50" maxlength="60" value="" />
</td>
<tr>
<td width="34%" align="left" valign="top">Moderator [ja / nein]</td>
<td width="66%" align="right" valign="top">
<b><u>J</u></b>a
<input type="checkbox" name="member" id="member" /></td>
<tr>
<td width="34%" align="left" valign="top">Eintragen | Eingaben zurücksetzen</td>
<td width="66%" align="right" valign="top">
<input type="submit" name="eintragen" id="eintragen" value="Eintragen" />
<input type="reset" name="button" id="" value="Eingaben löschen" />
</td>
<tr>
</table>
</form>
</body>
</html>
PHP-Code:
-- Tabellenstruktur für Tabelle `test`
--
CREATE TABLE `test` (
`id` int(11) NOT NULL auto_increment,
`bild` varchar(255) collate latin1_general_ci NOT NULL,
`name` varchar(255) collate latin1_general_ci NOT NULL,
`nickname` varchar(255) collate latin1_general_ci NOT NULL,
`alter` tinyint(3) unsigned NOT NULL,
`wohnort` varchar(255) collate latin1_general_ci NOT NULL,
`msn` varchar(255) collate latin1_general_ci NOT NULL,
`geschlecht` varchar(20) collate latin1_general_ci NOT NULL,
`teampage` varchar(255) collate latin1_general_ci NOT NULL,
`moderator` tinyint(1) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=35 ;
--
-- Daten für Tabelle `test`
--
Kommentar