Gib der Artikeltabelle eine zusätzliche Spalte in der du den Dateinamen des Bildes speicherst. Das Bild selbst speicherst du im Dateisystem ab.
Guten morgen euch allen,
ich bräuchte eure Ratschläge und Hilfe.
Ich habe folgendes Problem auf meiner Webseite:
Der User registriert sich, bekommt seine ID, Name etc. Alles wird in die DB eingelesen und abgespeichert.
Nun habe ich ein Formular erstellt welches es meinen Nutzern ermöglicht,
Tauschartikel einzutragen auch jeweils mit id etc. Nach senden der Daten wird der User zur nächsten Seite geleitet,
auf welcher er sein Bild des Tauschartikels Hochladen kann wenn er mag.
Nun da liegt der Hund begraben.
Ich würde gerne die eingetragenen Tauschdaten des Formulars, mit dem dazugehörigen Bild verknüpfen, sodass das passende Bild zum jeweiligen eingestellten Tauschartikel erscheint.
Wie kann ich so etwas realisieren?Ich bin etwas Hilflos da ich erst seit ein einhalb Monaten Php lerne durch learning by doing.
Also, die Daten der Form wird unter dem table news abgespeichert sammt id, username, email, beschreibung.
Das Bild wird nur ganz normal hochgeladen wie bekomme ich es in die Db sammt dem Bildpfad, verknüpft zum Artikel des Users? So sollte die Frage lauten.
MFG
JINJO
Gib der Artikeltabelle eine zusätzliche Spalte in der du den Dateinamen des Bildes speicherst. Das Bild selbst speicherst du im Dateisystem ab.
Dank dir wie kann ich das realisieren wie lese ich den Artikelnamen aus beim Upload oder danach?
Wie könnte ich nachträglich eine Tabellenspalte einfügen?
ich weiss viele fragen hoffe du bist so gütig.
Dank dir wie kann ich das realisieren wie lese ich den Artikelnamen aus beim Upload oder danach?
Wie könnte ich nachträglich eine Tabellenspalte einfügen?
ich weiss viele fragen hoffe du bist so gütig.
kommt es dann nicht irgendwann zwangsläufig dazu, dass wenn mehrere User eintragen sollten,da eventuell nen falsches bild zum artikel verlinkt wird?
Wie hast du denn die Tabellenspalten bisher angelegt? Doch sicher über PHPmyAdmin oder so, dann kannst du dort auch Tabellen ändern. Wenn du den Datensatz in der Tabelle anlegst, vergibst du gleichzeitig einen Dateinamen, z.B. aus Artikel-ID/-Nummer und dem Dateinamen der Hochgeladenen Datei. Den schreibst du dann in die Datenbank und kannst ihn jederzeit auslesen.
hi chron danke das du dich meiner annimmst.
Habe da schon mal was versucht, spalte ist angelegt Bildpfad wird auch eingelesen,
allerdings nimmt er dafür immer eine neue id sprich sie sind nicht untereinander verlinkt also Arikel zu Bild.
Hab es mit einem post formular versucht allerdings zerstört dieses wie ich festellen muss den upload prozess des Bildes.
Wäre nett wennde mir helfen kannst poste den Code mal hier von allem was fazu gehört.
Die Upload.php datei des Bilderuploads ganz unten ist mein gescheiterter versuch zu sehen er gibt den Bilde Pfad aus aber speichert ihn zu früh und als neue Id ab.
Hier habe ich mich versucht. Die Ausgabe müsste erst nach dem Upload erfolgen, dieser teil ist im Code auch vorhanden allerdings kann ich ihne nicht richtig einsetzen.PHP-Code:<?php
/**
* -----------------------------------------
* @author Nico Schubert / www.php-space.info
* @copyright Das Script kann unter Verwendung des Copyright uneingeschränkt genutzt / verändert werden. Das Copyright muss im Code sowie in der Ausgabe erhalten bleiben.
* @version Datei Upload Version 1.09 - 23.12.2009
* @abstract Das Script läuft erst ab der Php Version 5.0 oder höher, wenn Sie Thumbnail erstellen wollen, benötigen Sie GD Bibliothek in der Version 2.0.1 oder höher. Wenn Sie Probleme mit den Einrichten haben, so schauen Sie bitte in die Anleitung -> Installationsanleitung_1.09.pdf
* -----------------------------------------
*/
if(@file_exists('config.php')==true)
include_once('config.php');
else {
echo 'No Config File existing.';
exit;
}
if(@file_exists('language/'.$language_file)==true)
include_once('language/'.$language_file);
else {
echo 'No Language File existing.';
exit;
}
if(file_exists('error_log.php')==true)
include_once('error_log.php');
if(function_exists("date_default_timezone_set")==true)
@date_default_timezone_set($timezone);
$reg_exp="/^[a-z0-9_]([a-z0-9_-]*\.?[a-z0-9_-])*\.[a-z]{3,4}$/i";
$url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$url .= $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']);
$document_root=$_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PHP_SELF']);
$ausgabe='';
if (!isset($_GET["loechen"])) $_GET["loechen"] = ""; else $_GET["loechen"]=sprintf("%d", $_GET["loechen"]);
if (!isset($_GET["file"])) $_GET["file"] = "";
if(!isset($_POST["senden"])) $_POST["senden"]=''; else $_POST["senden"]=sprintf("%d", $_POST["senden"]);
if(!isset($_POST["tn"])) $_POST["tn"]='';
if(@file_exists('header.php')==true)
include_once('header.php');
if(@file_exists('functions.php')==true)
include_once('functions.php');
if(@file_exists('file_delete.php')==true)
include_once('file_delete.php');
if(@file_exists('processing.php')==true)
include_once('processing.php');
if(uploadmoeglichkeitpruefen()==false){
$ausgabe.='<div style="color:red;">'.$lang['fehler_upload_nicht_m'].' <a href="'.htmlspecialchars($_SERVER['PHP_SELF']).'">'.$lang['navigationselemente_test'].'</a><br><br></div>'."\n";
include_once('footer.php');
exit;
}
if(@file_exists($document_root.$img_ordner)==false OR $document_root.$img_ordner ==''){
$ausgabe.='<div style="color:red;">'.$lang['fehler_upload_no_directory'].' <a href="'.htmlspecialchars($_SERVER['PHP_SELF']).'">'.$lang['navigationselemente_test'].'</a><br><br></div>'."\n";
include_once('footer.php');
exit;
}
if(@file_exists('form.php')==true)
include_once('form.php');
if(@file_exists('file_list.php')==true)
include_once('file_list.php');
if(@file_exists('footer.php')==true)
include_once('footer.php');
?>
<form method="post" action="audio-eintragen.php">
<input type="text" name="artikelbild"
value="<?php echo $url.$img_ordner.$filename ; ?>" size=30>
<br>
<input type="Submit" name="submit" value="Share einstellen">
Ich sehe da weder den Dateiupload, noch die Verbindung zur Datenbank. Hast du dir selbst mal ein Schema gemacht, wie das ablaufen soll?
Code:# wenn Daten per Formular übergeben wurden # Datenbankverbindung aufrufen # einmaligen Namen für Datei vergeben # Datei im Dateisystem speichern # SQL vorbereiten, Dateinamen mit einbringen # SQL absetzen ....
ja ales in der conig.php gespeichert vom Prinzip her funktioniert es er erstellt bloss immer wieder eine neue id für ein Bild.Http://sharer.eu/shares.php Da siehste genau was ich meine.Name Netzpromo@googlemail.com PW kingjin
ist noch ne baustelle nachen login einfach noch mal auf shares.php gehen bitte.
Geändert von Phil Hedtmann (20.05.2011 um 17:51 Uhr)
Ohne hier Code zu posten kannst du das ziemlich vergessen, sieht doch keiner was bei dir überhaupt passiert. Raten würde ich jetzt mal, dass du zwei Inserts an die Datenbank schickst, anstatt ein einzelnes Insert, das die Formulardaten + Pfad zum Bild enthält.
Mit dem Benutzernamen und Passwort kann ich mich nicht einloggen.
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)