mboost-dp1
Billedupload med flere felter på
- Forside
- ⟨
- Forum
- ⟨
- Programmering
Hej
Jeg skal have knyttet endnu et billede på, men har problemer med hvordan jeg kan gøre det, har stadig ikke helt fået forståelsen af hvordan man kan skrive det og hvordan man ikke kan skrive det.
Dette her er mine oplysninger, som skal gemmes i databasen.
overskrift, maerke, aargang, model, farve, km, pris, billede1, billede2
Men som det kan ses i koden, mangler billede2, jeg kan simpelthen ikke se hvor jeg kan sætte den ind og hvordan det skal stå.
Se min kode her:
Jeg skal have knyttet endnu et billede på, men har problemer med hvordan jeg kan gøre det, har stadig ikke helt fået forståelsen af hvordan man kan skrive det og hvordan man ikke kan skrive det.
Dette her er mine oplysninger, som skal gemmes i databasen.
overskrift, maerke, aargang, model, farve, km, pris, billede1, billede2
Men som det kan ses i koden, mangler billede2, jeg kan simpelthen ikke se hvor jeg kan sætte den ind og hvordan det skal stå.
Se min kode her:
<?php
$allowedFileTypes = array('jpg','gif','png');
$uploadDir = '../pic/biler/';
//Er der trykket på Upload file knappen?
if(isset($_POST['Submit'])){
//Har vi en fil?
if(is_uploaded_file($_FILES['billede1']['tmp_name'])){
//Filendelse
$extension = strtolower(pathinfo($_FILES['billede1']['name'],PATHINFO_EXTENSION));
//Er filen en af de filer vi gerne vil have?
if(in_array($extension,$allowedFileTypes)){
if( file_exists("../pic/biler/" . $_FILES['billede1']['name'])){
$filnavn = substr( md5( time() ), 0, 10 ) . '_' . $_FILES['billede1']['name'];
}else{
$filnavn = basename($_FILES['billede1']['name']);
}
//Vi flytter filen fra tmp til vores UPLOADDIR
if(move_uploaded_file($_FILES['billede1']['tmp_name'],$uploadDir . $filnavn))
{
$overskrift = mysql_real_escape_string($_POST["overskrift"]);
$maerke = mysql_real_escape_string($_POST["maerke"]);
$aargang = mysql_real_escape_string($_POST["aargang"]);
$model = mysql_real_escape_string($_POST["model"]);
$farve = mysql_real_escape_string($_POST["farve"]);
$km = mysql_real_escape_string($_POST["km"]);
$pris = mysql_real_escape_string($_POST["pris"]);
mysql_query("INSERT INTO biler (overskrift, maerke, aargang, model, farve, km, pris, billede1 ) VALUES ('".$overskrift."', '".$maerke."', '".$aargang."', '".$model."', '".$farve."', '".$km."', '".$pris."', '".$filnavn."')")or die(mysql_error());
echo '<br /><div id="nyhed_rettet">File ('.basename($_FILES['billede1']['name']).') Billedet blev uploadet </div>';
}else{
echo '<br /><div id="nyhed_rettet">Fejl - Billedet kan ikke uploades: '.basename($_FILES['billede1']['name']).'</div>';
}
}else{
echo '<br /><div id="nyhed_rettet">Forkert filtype, gyldige filtyper er: ('.implode(',',$allowedFileTypes).')</div>';
}
}else{
$description = mysql_real_escape_string($_POST['description']);
$overskrift = mysql_real_escape_string($_POST["overskrift"]);
$maerke = mysql_real_escape_string($_POST["maerke"]);
$aargang = mysql_real_escape_string($_POST["aargang"]);
$model = mysql_real_escape_string($_POST["model"]);
$farve = mysql_real_escape_string($_POST["farve"]);
$km = mysql_real_escape_string($_POST["km"]);
$pris = mysql_real_escape_string($_POST["pris"]);
mysql_query("INSERT INTO biler (overskrift, maerke, aargang, model, farve, km, pris, billede1 ) VALUES ('".$overskrift."', '".$maerke."', '".$aargang."', '".$model."', '".$farve."', '".$km."', '".$pris."', '".$filnavn."')")or die(mysql_error());
echo '<br /><div id="nyhed_rettet">Informationer er gemt, ingen billeder var valgt</div>';
}
}
?>
Et generelt spørgsmål? Hvad er din erfaring med at kode i PHP?
Det fremgår faktisk rimeligt tydeligt hvor du skal lave ændringer for at kunne tilføje billede2.
Du burde kunne komme afsted med at duplikere logikken for hvor der står billede1 og rette denne tekst til billede2.
Husk at din tabel også skal rettes til, så den indeholder et felt til billede2.
Det fremgår faktisk rimeligt tydeligt hvor du skal lave ændringer for at kunne tilføje billede2.
Du burde kunne komme afsted med at duplikere logikken for hvor der står billede1 og rette denne tekst til billede2.
Husk at din tabel også skal rettes til, så den indeholder et felt til billede2.
Ja jeg stadig har ikke helt forstået syntaksen.
Mit problem ligger i hvordan koden skal stå, når der er sat et billede mere på, kan ikke lige præcis se, fra hvor i koden og til hvor i koden, der skal dublikeres.
Det lyder umiddelbart ikke så svært, men kan simpelthen ikke få det til at virke.
Mit problem ligger i hvordan koden skal stå, når der er sat et billede mere på, kan ikke lige præcis se, fra hvor i koden og til hvor i koden, der skal dublikeres.
Det lyder umiddelbart ikke så svært, men kan simpelthen ikke få det til at virke.
Jeg tror det er lige her i, jeg laver fejl, skal denne $filnavn dække over begge billeder eller skal de have en variabel hver?
if(in_array($extension,$allowedFileTypes)){
if( file_exists("../pic/biler/" . $_FILES['billede1']['name'])){
$filnavn = substr( md5( time() ), 0, 10 ) . '_' . $_FILES['billede1']['name'];
}else{
$filnavn = basename($_FILES['billede1'][
'name']);
}
Det kan man vel se, når jeg har skrevet den ind jo, som kan ses øverst.
Jeg har selv skrevet noget af koden og har fået hjælp til resten.
Det jeg sådan set spørger om er syntaksen, hvorman kan man skrive det?
Fx:
Aner ikke hvorfor den laver mærkelige tegn i min kode når jeg gemmer???
Jeg har selv skrevet noget af koden og har fået hjælp til resten.
Det jeg sådan set spørger om er syntaksen, hvorman kan man skrive det?
Fx:
//Dette er med et billede
if(isset($_POST['Submit'])){
//Har vi en fil?
if(is_uploaded_file($_FILES['billede1']['tmp_name']))
//Dette er med to
if(is_uploaded_file($_FILES['billede1']['tmp_name']
&& $_FILES['billede2']['tmp_name'] ))
Aner ikke hvorfor den laver mærkelige tegn i min kode når jeg gemmer???
Måske ville det være flere dag gad hjælpe dig hvis koden ikke var så smertende at se på. :)
(newz.dk elendige kode-formatering hjælper heller ikke.. få nu fingeren ud, mandalej..)
(newz.dk elendige kode-formatering hjælper heller ikke.. få nu fingeren ud, mandalej..)
Gå til top
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.