king-ich
Mitglied
Hallo.
Ich versuche seit vielen Tagen diesen Code:
meinen Bedürfnissen anzupassen.
Wenn Bilder neue ausgewählt werden sollen diese in der Datenbank gespeichert werden.
Wenn KEINE neuen Bilder gewählt werden sollen die Bilder die in der Datenbank sind in der Datenbank bleiben.
Kann mir bitte jemand helfen?
(Neue Bilder in die Datenbank speichern funktioniert mit dem Code)
Ich versuche seit vielen Tagen diesen Code:
PHP:
<?php
$titel = "";
$art = "";
$files = "";
$plz = "";
$ort = "";
$vorname = "";
$nachname = "";
$gebaeude_art = "";
$grundstueck = "";
$zimmer = "";
$quadrat = "";
$miete = "";
$preis_art = "";
$beschreibung = "";
$telefon = "";
$password = "";
$password2 = "";
if(isset($_POST['submit']) && empty($files)){
$titel = $_POST['titel'];
$art = $_POST['art'];
$plz = $_POST['plz'];
$ort = $_POST['ort'];
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$gebaeude_art = $_POST['gebaeude_art'];
$grundstueck = $_POST['grundstueck'];
$zimmer = $_POST['zimmer'];
$quadrat = $_POST['quadrat'];
$miete = $_POST['miete'];
$preis_art = $_POST['preis_art'];
$beschreibung = $_POST['beschreibung'];
$telefon = $_POST['telefon'];
$password = $_POST['password'];
$password2 = $_POST['password2'];
if($password != $password2){
$fehler = "Die Passwörter stimmen nicht überein...";
}
$statement = $pdo->prepare("UPDATE objekte SET titel = :titel, art = :art, plz = :plz, ort = :ort, gebaeude_art = :gebaeude_art, grundstueck = :grundstueck, zimmer = :zimmer, quadrat = :quadrat, miete = :miete, preis_art = :preis_art, beschreibung = :beschreibung WHERE id = '{$change}'");
$result = $statement->execute(array('titel' => $titel, 'art' => $art, 'plz' => $plz, 'ort' => $ort, 'gebaeude_art' => $gebaeude_art, 'grundstueck' => $grundstueck, 'zimmer' => $zimmer, 'quadrat' => $quadrat, 'miete' => $miete, 'preis_art' => $preis_art, 'beschreibung' => $beschreibung));
}if(isset($_POST['submit']) && !empty($_FILES['files']))
{
$titel = $_POST['titel'];
$art = $_POST['art'];
$files = $_FILES['files'];
$plz = $_POST['plz'];
$ort = $_POST['ort'];
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$gebaeude_art = $_POST['gebaeude_art'];
$grundstueck = $_POST['grundstueck'];
$zimmer = $_POST['zimmer'];
$quadrat = $_POST['quadrat'];
$miete = $_POST['miete'];
$preis_art = $_POST['preis_art'];
$beschreibung = $_POST['beschreibung'];
$telefon = $_POST['telefon'];
$password = $_POST['password'];
$password2 = $_POST['password2'];
if($password != $password2){
$fehler = "Die Passwörter stimmen nicht überein...";
}
$statement = $pdo->prepare("UPDATE objekte SET titel = :titel, art = :art, plz = :plz, ort = :ort, gebaeude_art = :gebaeude_art, grundstueck = :grundstueck, zimmer = :zimmer, quadrat = :quadrat, miete = :miete, preis_art = :preis_art, beschreibung = :beschreibung WHERE id = '{$change}'");
$result = $statement->execute(array('titel' => $titel, 'art' => $art, 'plz' => $plz, 'ort' => $ort, 'gebaeude_art' => $gebaeude_art, 'grundstueck' => $grundstueck, 'zimmer' => $zimmer, 'quadrat' => $quadrat, 'miete' => $miete, 'preis_art' => $preis_art, 'beschreibung' => $beschreibung));
$ergebnis = "SELECT FILE_NAME FROM auktion_images WHERE ANGEBOT_ID = '{$change}'";
$resultat = $pdo->query($ergebnis);
foreach ($resultat as $reihe): ?>
<?php unlink('image_uploads/'.$reihe["FILE_NAME"]);
$statement = $pdo->prepare("delete from auktion_images where ANGEBOT_ID = '{$change}'");
$statement->execute(array());
endforeach;
$query = "INSERT into auktion_images(`ANGEBOT_ID`, `FILE_NAME`, `FILE_SIZE`,`FILE_TYPE`)
VALUES(:ANGEBOT_ID, :FILE_NAME, :FILE_SIZE, :FILE_TYPE)";
$stmt = $pdo->prepare($query);
foreach($_FILES['files']['tmp_name'] as $key => $error ){
if ($error != UPLOAD_ERR_OK) {
$errors[] = $_FILES['files']['name'][$key] . ' wurde nicht hochgeladen.';
continue;
}
$file_name = $key.$_FILES['files']['name'][$key];
$file_size = $_FILES['files']['size'][$key];
$file_tmp = $_FILES['files']['tmp_name'][$key];
$file_type = $_FILES['files']['type'][$key];
if($file_size > 2097152){
$errors[] = 'Bilder müssen kleiner als 2 MB sein.';
continue;
}
try{
$stmt->bindParam( ':ANGEBOT_ID', $change, PDO::PARAM_STR );
$stmt->bindParam( ':FILE_NAME', $file_name , PDO::PARAM_STR );
$stmt->bindParam( ':FILE_SIZE', $file_size, PDO::PARAM_STR );
$stmt->bindParam( ':FILE_TYPE', $file_type, PDO::PARAM_STR );
$stmt->execute();
$desired_dir="image_uploads";
if(is_dir($desired_dir)==false){
mkdir($desired_dir, 0700);// Create directory if it does not exist
}
if(is_file($desired_dir.'/'.$file_name)==false){
move_uploaded_file($file_tmp,$desired_dir.'/'.$file_name);
}else{ //rename the file if another one exist
$new_file=$desired_dir.'/'.$file_name.time();
move_uploaded_file($file_tmp,$new_file) ;
}
}catch(PDOException $e){
$errors[] = $file_name . 'nicht in Datenbank gespeichert.';
echo $e->getMessage();
}
}}
meinen Bedürfnissen anzupassen.
Wenn Bilder neue ausgewählt werden sollen diese in der Datenbank gespeichert werden.
Wenn KEINE neuen Bilder gewählt werden sollen die Bilder die in der Datenbank sind in der Datenbank bleiben.
Kann mir bitte jemand helfen?
(Neue Bilder in die Datenbank speichern funktioniert mit dem Code)
Zuletzt bearbeitet von einem Moderator: