Uploadlink direkt merken.

daniel_sun

Erfahrenes Mitglied
Hallo,
wie man ein Uploadfeld (mit html) erstellt weis ist. Wie man das ungefähr in PHP mach weis ich auch aber ich möchte, das sich PHP den link der Datei merkt und ihr direkt in eine Mysql Datenbank speichert, damit ich ihn an anderer Stellte per <img src="".... ect. wieder als bild ausgeben kann.

wie müsste der PHP code dieser Funktion aussehen also das mit dem datei speichern und Link merken.
 
Das ist mein Formular:

HTML:
<html>
<head>
<title>SGC-EGO Admin-Control-Plantel</title>
<!--
body,td,th {
	color: #000000;
}
body {
	background-color: #000000;
}
.style5 {font-size: 5px}
.style6 {font-family: Arial, Helvetica, sans-serif}
.style7 {font-size: 1px}
.style8 {
	color: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
}
.style9 {color: #FFFF00}
a:link {
	color: #000000;
}
a:visited {
	color: #000000;
}
a:hover {
	color: #FF0000;
}
a:active {
	color: #FF0000;
}
.style13 {font-size: 7px}
-->
</style></head>
<body bgcolor="#000000">
<table border="0">
<tr><td>
<talbe border="0" cellspacing="0">
<tr>
<td background="../images/cellpic.jpg" height="27" width="880"><b>&nbsp;Neue Kategorie:</b></td>
</tr>
<tr>
<td colspan="2" align="left" valign="top" bgcolor="#5F5F5F"><center><b>Bitte fülle alle Felder aus.</b><br><br>
<form action="acp_kategorie_new2.php" method="post">
<b>Gib den Kategorienamen ein:</b><br>
<input type="text" name="name"><br><br>
<b>Lade das Kategoriebild hoch:</b><br>
<input type="file" name="file"><br><br>
<input type="submit" value="Kategorie erstellen">&nbsp;&nbsp;<input type="reset" value="Reset">
</form>
<br>
</td></tr>

Das mein UPscript:

PHP:
<html>
<head>
<title>SGC-EGO Admin-Control-Plantel</title>
<!--
body,td,th {
	color: #000000;
}
body {
	background-color: #000000;
}
.style5 {font-size: 5px}
.style6 {font-family: Arial, Helvetica, sans-serif}
.style7 {font-size: 1px}
.style8 {
	color: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
}
.style9 {color: #FFFF00}
a:link {
	color: #000000;
}
a:visited {
	color: #000000;
}
a:hover {
	color: #FF0000;
}
a:active {
	color: #FF0000;
}
.style13 {font-size: 7px}
-->
</style></head>
<body bgcolor="#000000">
<table border="0">
<tr><td>
<talbe border="0" cellspacing="0">
<tr>
<td background="../images/cellpic.jpg" height="27" width="880"><b>&nbsp;Neue Kategorie:</b></td>
</tr>
<tr>
<td colspan="2" align="left" valign="top" bgcolor="#5F5F5F">
<?php
include('../includes/config.php');
$conn = mysql_connect($mysql_host, $mysql_user, $mysql_pass);

if (!$conn) {
   echo "Keine Verbindung zur DB: " . mysql_error();
   exit;
}

if (!mysql_select_db("sgbrowser")) {
   echo "Kann  mydbname nicht auswählen: " . mysql_error();
}
session_start();
$tempname = $_FILES['file']['tmp_name'];

$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];


if($size > "1000000") {
    $err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 15 KB!";
}

if(empty($err)) {
    copy("$tempname", "../images/kategorie/$name");
    echo "Die Datei $name wurde erfolgreich hochgeladen!";
}
else {
    foreach($err as $error)
    echo "$error<br>";
}
$path = "images/kategorie/";

$filepath = $path+$name;

"INSERT INTO  sgc_news_kategorie
    (name,image)
VALUES
    ('".$_POST['name']."','$filepath')";
mysql_query($sql2) OR die(mysql_error());
echo "<b>Die neue Kategorie wurde eingetragen</b>";
?>
<br>

Weder das Bild noch der Link werden eingetragen bzw das bild upgeloadet. Aber das Script "sagt" das der upload gefunzt hat. Wo ist der Fehler?
 
THX Der Upload geht nun die Datei wird in den Gewollten Ordner auf dem Server geladen aber es wird noch nichts in die DB eingetragen

Fehler
Code:
Querry was empty

Wisst ihr was noch falsch ist?
 
PHP:
"INSERT INTO  sgc_news_kategorie
    (name,image)
VALUES
    ('".$_POST['name']."','$filepath')";
mysql_query($sql2) OR die(mysql_error());
echo "<b>Die neue Kategorie wurde eingetragen</b>";
?>

Wenn dein Source so aussieht, wundert es mich nicht, dass da nix funktioniert...
Solltest du dein Query nicht noch $sql2 zuordnen?
PHP:
$sql2 = "INSERT INTO  sgc_news_kategorie
    (name,image)
VALUES
    ('".$_POST['name']."','$filepath')";
 
PHP:
$sql2 = "INSERT INTO  sgc_news_kategorie
    (name,image)
VALUES
    ('".$_POST['name']."','".$filepath."')"

So müsste es natürlich heißen, mein Fehler.

Ansonsten gib doch mal testweise $filepath aus, ob es den richtigen Inhalt hat, oder ob da bereits der Fehler auftritt.
 
Zurück