Avatar billede tobias-p Nybegynder
20. august 2006 - 23:29 Der er 8 kommentarer

Ikke de rette data i databasen

Jeg har fået programeret et galleriscript af en ven, hvor der blot manglede nogle småting. En af de småting er en måde hvorpå man kan vælge hvilket af de billeder man uploader, der skal vises på galleri-forsiden (altså det billede man skal trykke på, for at komme ind i selve galleriet). Jeg havde forestillet mig at man kunne sætte et flueben ud for den fil man ønsker at bruge. Og det har lavet med følgende kode:

<form action=galleri.php enctype=multipart/form-data method=post>";
while($i <= $antal){
echo "<input name=file[] type=file id='file[]'><input type=\"checkbox\" name=\"galleri\" value=\"1\"><br>";
$i++;
}
echo "<input type=submit name=Submit value=Submit><br>";
echo "<table border=0><tr><td>Antal</td><td><input type=text name=antal value=3></td></tr></table></form>";
$i = 0;
while(isset($_FILES['file']['name'][$i])){
if(!empty($_FILES['file']['name'][$i])){
if($_FILES['file']['error'][$i]==0){
if(!file_exists($uploads_directory . $_FILES['file']['name'][$i])){
if(is_uploaded_file($_FILES['file']['tmp_name'][$i])){
if(move_uploaded_file($_FILES['file']['tmp_name'][$i], $uploads_directory . "/" . $_FILES['file']['name'][$i])) {

$check = $HTTP_POST_VARS["galleri"];
if($check = 1) { $galleri = 1; }
else {$galleri = 0; }


$fil = $uploads_directory . "/" . $_FILES['file']['name'][$i];
$filnavn = $_FILES['file']['name'][$i];
$sql = mysql_query("INSERT into galleri (id, galid, galleri, billede, filnavn, ip) VALUES ('', '$max', '$galleri', '$fil', '$filnavn', '$ip')") or die(mysql_error());

Det er meningen at den skal sætte indholde af variablen $galleri ind i cellen i databasen som hedder galleri, det gør den også, men det gør det ved samtlige af de uploadede billeder. Det er kun meningen at den skal gøre dette ved den fil man har valgt den til at gøre. Nu har jeg siddet og bakset med det temmelig længe, og føler jeg er lidt på bar bund. Det ville bare være super skønt hvis der var nogen der kunne give en hjælpende hånd. på forhånd tak (:
Avatar billede tobias-p Nybegynder
20. august 2006 - 23:29 #1
Undskyld at koden ser lidt rodet ud!
Avatar billede jakobdo Ekspert
21. august 2006 - 07:55 #2
Du skal rette:
<input type=\"checkbox\" name=\"galleri\" value=\"1\">
til:
<input type=\"checkbox\" name=\"galleri[]\" value=\"1\">

Og:
$check = $HTTP_POST_VARS["galleri"];
if($check = 1) { $galleri = 1; }
else {$galleri = 0; }
til:
$check = $HTTP_POST_VARS["galleri"][$i];
if($check = 1) { $galleri = 1; }
else {$galleri = 0; }

Så tror jeg måske det skulle gøre det.
Avatar billede tobias-p Nybegynder
21. august 2006 - 08:49 #3
Det gjorde desværre ikke nogen forskel. ellers tak (:
Avatar billede jakobdo Ekspert
21. august 2006 - 08:59 #4
Det skal være: <input type=\"checkbox\" name=\"galleri[]\" value=\"1\">
Det er så din kontrol du skal rette lidt på.
Avatar billede tobias-p Nybegynder
21. august 2006 - 09:25 #5
Jeg forstår ikke rigtigt had du mener?

Jeg rettede i min kode så den var magen til den rettede udgave du gav mig tilbage. Men det hjalp altså ikke.
Avatar billede tobias-p Nybegynder
21. august 2006 - 09:25 #6
undskyld, *hvad du mener.
Avatar billede jakobdo Ekspert
21. august 2006 - 10:55 #7
Kan du kode selv?
Eller er det et script du har fundet?
Avatar billede tobias-p Nybegynder
21. august 2006 - 13:27 #8
Jeg kan godt lidt selv. men jeg er ikke den mest erfarene.
Jeg forstod bare ikke hvad du mente med at det var min kontrol jeg skulle rette på?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester