norsemanGrey Skrevet 27. november 2010 Del Skrevet 27. november 2010 Heisann, Sitter å prøver å lage en webside for opplasting av filer. Men det er litt problemer med scriptet som jeg ikke finner ut av. Bruker Dreamwaver. Noens som kan titt og gi noen tilbakemld? Hadde satt stor pris på det. Sitter helt fast her :/ <?php $a = $_GET['a']; if (isset($a) && ($a == 'edit')) { $id = $_GET['id']; if (!$save_values) { $print_db = 1; } $query = "SELECT title, name, type, size, folder, target FROM documents WHERE id = '$id'"; $result = mysql_query($query); if (!$result) { mysql_close(); die('Feil ved selektering av dokument'); } else { $row = mysql_fetch_object($result); } } if (isset($_POST['upload'])) { if (isset($_POST['currentfile'])) { $folder = $_POST['folder_radio']; if ($_POST['title']) { $title = $_POST['title']; $title = strip_tags($title); if(!get_magic_quotes_gpc()) { $title = addslashes($title); } $query = "UPDATE documents SET title = '$title', folder = '$folder' WHERE id = '$id'"; } else { $query = "UPDATE documents SET title = NULL, folder = '$folder' WHERE id = '$id'"; } mysql_query($query) or die('Feil'); $output = 'Oppdatert'; } elseif($_FILES['userfile']['size'] > 0) { $fileName = $_FILES['userfile']['name']; $fileTemp = $_FILES['userfile']['tmp_name']; $fileSize = $_FILES['userfile']['size']; $fileType = $_FILES['userfile']['type']; $target = "upload/docs/"; $target = $target . basename($fileName); if(!move_uploaded_file($fileTemp, $target)) { die('Feil ved opplasting'); } if(!get_magic_quotes_gpc()) { $target = addslashes($target); } $folder = $_POST['folder_radio']; if(!get_magic_quotes_gpc()) { $fileName = addslashes($fileName); } if ($_POST['title']) { $title = $_POST['title']; $title = strip_tags($title); if(!get_magic_quotes_gpc()) { $title = addslashes($title); } if (isset($a) && ($a == 'edit')) { $query = "UPDATE documents SET title = '$title', name = '$fileName', type = '$fileType', size = '$fileSize', folder = '$folder', target = '$target' WHERE id = '$id'"; } else { $query = "INSERT INTO documents (title, name, type, size, folder, target) VALUES ('$title', '$fileName', '$fileType', '$fileSize', '$folder', '$target')"; } } else { if (isset($a) && ($a == 'edit')) { $query = "UPDATE documents SET name = '$fileName', type = '$fileType', size = '$fileSize', folder = '$folder', target = '$target' WHERE id = '$id'"; } else { $query = "INSERT INTO documents (name, type, size, folder, target) VALUES ('$fileName', '$fileType', '$fileSize', '$folder', '$target')"; } } mysql_query($query) or die('Feil ved innsetting av fil'); //Fjerner fil som ikke er i bruk hvis det oppdateres med ny fil if (isset($a) && ($a == 'edit')) { deleteDocFromServer($row->target); } if (isset($a) && ($a == 'edit')) { unset($print_db); $output = 'Updated'; } else { $output = 'The file '.$fileName.' was successfully uploaded'; } } else { $output = 'Choos a valid file'; $save_values = 1; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Hovedprosjekt</title> </head> <body> <table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0"> <td class="page_main"><table width="800" align="center" cellspacing="0" cellpadding="0"> <td valign="top" align="center"> <form action="<?php if (isset($a) && ($a == 'edit')) { ?> add_document.php?a=edit&id=<? echo $id; } else { echo $_SERVER['PHP_SELF']; } ?>" method="POST" enctype="multipart/form-data" autocomplete="off" /> <? if (isset($a) && ($a == 'edit')) { ?> Bruk opplastet fil: <input type="checkbox" name="currentfile" value="on" CHECKED> <? } ?> <input type="hidden" name="MAX_FILE_SIZE" value="8000000"> Velg fil: <br /><input name="userfile" type="file" id="userfile"> <br> Tekst: <input type="text" name="title" value="<? if ($save_values) { echo stripslashes(htmlspecialchars($_POST['title'])); } elseif (isset($print_db)) { echo htmlspecialchars($row->title); } ?>" > Plassering: Root: <input type="radio" name="folder_radio" value="root" <? if ($save_values && ($_POST['folder_radio'] == 'root')) { ?> CHECKED <? } elseif(isset($print_db) && ($row->folder == 'root')) { ?> CHECKED <? } elseif(!isset($print_db) && !isset($save_values)) { ?> CHECKED <? } ?> /> <? $query = "SELECT folder FROM folders ORDER BY id"; $result = @mysql_query($query); if (!$result) { $output = 'Feil ved selektering av mapper fra databasen'; } else { if (mysql_num_rows($result) > 0) { while ($frow = mysql_fetch_object($result)) { ?> <br /><? echo $frow->folder; ?>: <input type="radio" name="folder_radio" value="<? echo stripslashes(htmlspecialchars($frow->folder)); ?>" <? if ($save_values && ($_POST['folder_radio'] == $frow->folder)) { ?> CHECKED <? } elseif(isset($print_db) && ($row->folder == $frow->folder)) { ?> CHECKED <? } ?> /> <? } } } mysql_close(); ?> <br /> <input type="submit" name="upload" value="Last opp" /> <?php echo $output; ?> </table> </body> </html> Lenke til kommentar
Thomas. Skrevet 27. november 2010 Del Skrevet 27. november 2010 Feilmelding? Hva fungerer ikke? Lenke til kommentar
norsemanGrey Skrevet 27. november 2010 Forfatter Del Skrevet 27. november 2010 Feilmelding? Hva fungerer ikke? Får denne feilmld. Parse error: syntax error, unexpected $end in C:\xampp\htdocs\Login\add_document.php on line 261 Lenke til kommentar
Thomas. Skrevet 27. november 2010 Del Skrevet 27. november 2010 Feilmelding? Hva fungerer ikke? Får denne feilmld. Parse error: syntax error, unexpected $end in C:\xampp\htdocs\Login\add_document.php on line 261 Ja, da kan det være smart å poste riktig kode. Post add_document.php. Lenke til kommentar
norsemanGrey Skrevet 27. november 2010 Forfatter Del Skrevet 27. november 2010 Feilmelding? Hva fungerer ikke? Får denne feilmld. Parse error: syntax error, unexpected $end in C:\xampp\htdocs\Login\add_document.php on line 261 Ja, da kan det være smart å poste riktig kode. Post add_document.php. Det er jo koden jeg har postet over Lenke til kommentar
Thomas. Skrevet 27. november 2010 Del Skrevet 27. november 2010 Nei, koden over har bare 249 linjer. Lenke til kommentar
norsemanGrey Skrevet 27. november 2010 Forfatter Del Skrevet 27. november 2010 Nei, koden over har bare 249 linjer. my bad <?php // Include Session Script (DB Connection and Login Check) include("include/session.php"); if (!$session->logged_in){ mysql_close(); die('You are not authorized to view this page'); } //Include Files include('include/constants.php'); $a = $_GET['a']; if (isset($a) && ($a == 'edit')) { $id = $_GET['id']; if (!$save_values) { $print_db = 1; } $query = "SELECT title, name, type, size, folder, target FROM documents WHERE id = '$id'"; $result = mysql_query($query); if (!$result) { mysql_close(); die('Feil ved selektering av dokument'); } else { $row = mysql_fetch_object($result); } } if (isset($_POST['upload'])) { if (isset($_POST['currentfile'])) { $folder = $_POST['folder_radio']; if ($_POST['title']) { $title = $_POST['title']; $title = strip_tags($title); if(!get_magic_quotes_gpc()) { $title = addslashes($title); } $query = "UPDATE documents SET title = '$title', folder = '$folder' WHERE id = '$id'"; } else { $query = "UPDATE documents SET title = NULL, folder = '$folder' WHERE id = '$id'"; } mysql_query($query) or die('Feil'); $output = 'Oppdatert'; } elseif($_FILES['userfile']['size'] > 0) { $fileName = $_FILES['userfile']['name']; $fileTemp = $_FILES['userfile']['tmp_name']; $fileSize = $_FILES['userfile']['size']; $fileType = $_FILES['userfile']['type']; $target = "upload/docs/"; $target = $target . basename($fileName); if(!move_uploaded_file($fileTemp, $target)) { die('Feil ved opplasting'); } if(!get_magic_quotes_gpc()) { $target = addslashes($target); } $folder = $_POST['folder_radio']; if(!get_magic_quotes_gpc()) { $fileName = addslashes($fileName); } if ($_POST['title']) { $title = $_POST['title']; $title = strip_tags($title); if(!get_magic_quotes_gpc()) { $title = addslashes($title); } if (isset($a) && ($a == 'edit')) { $query = "UPDATE documents SET title = '$title', name = '$fileName', type = '$fileType', size = '$fileSize', folder = '$folder', target = '$target' WHERE id = '$id'"; } else { $query = "INSERT INTO documents (title, name, type, size, folder, target) VALUES ('$title', '$fileName', '$fileType', '$fileSize', '$folder', '$target')"; } } else { if (isset($a) && ($a == 'edit')) { $query = "UPDATE documents SET name = '$fileName', type = '$fileType', size = '$fileSize', folder = '$folder', target = '$target' WHERE id = '$id'"; } else { $query = "INSERT INTO documents (name, type, size, folder, target) VALUES ('$fileName', '$fileType', '$fileSize', '$folder', '$target')"; } } mysql_query($query) or die('Feil ved innsetting av fil'); //Fjerner fil som ikke er i bruk hvis det oppdateres med ny fil if (isset($a) && ($a == 'edit')) { deleteDocFromServer($row->target); } if (isset($a) && ($a == 'edit')) { unset($print_db); $output = 'Updated'; } else { $output = 'The file '.$fileName.' was successfully uploaded'; } } else { $output = 'Choos a valid file'; $save_values = 1; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Hovedprosjekt</title> </head> <body> <table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0"> <td class="page_main"><table width="800" align="center" cellspacing="0" cellpadding="0"> <td valign="top" align="center"> <form action="<?php if (isset($a) && ($a == 'edit')) { ?> add_document.php?a=edit&id=<? echo $id; } else { echo $_SERVER['PHP_SELF']; } ?>" method="POST" enctype="multipart/form-data" autocomplete="off" /> <? if (isset($a) && ($a == 'edit')) { ?> Bruk opplastet fil: <input type="checkbox" name="currentfile" value="on" CHECKED> <? } ?> <input type="hidden" name="MAX_FILE_SIZE" value="8000000"> Velg fil: <br /><input name="userfile" type="file" id="userfile"> <br> Tekst: <input type="text" name="title" value="<? if ($save_values) { echo stripslashes(htmlspecialchars($_POST['title'])); } elseif (isset($print_db)) { echo htmlspecialchars($row->title); } ?>" > Plassering: Root: <input type="radio" name="folder_radio" value="root" <? if ($save_values && ($_POST['folder_radio'] == 'root')) { ?> CHECKED <? } elseif(isset($print_db) && ($row->folder == 'root')) { ?> CHECKED <? } elseif(!isset($print_db) && !isset($save_values)) { ?> CHECKED <? } ?> /> <? $query = "SELECT folder FROM folders ORDER BY id"; $result = @mysql_query($query); if (!$result) { $output = 'Feil ved selektering av mapper fra databasen'; } else { if (mysql_num_rows($result) > 0) { while ($frow = mysql_fetch_object($result)) { ?> <br /><? echo $frow->folder; ?>: <input type="radio" name="folder_radio" value="<? echo stripslashes(htmlspecialchars($frow->folder)); ?>" <? if ($save_values && ($_POST['folder_radio'] == $frow->folder)) { ?> CHECKED <? } elseif(isset($print_db) && ($row->folder == $frow->folder)) { ?> CHECKED <? } ?> /> <? } } } mysql_close(); ?> <br /> <input type="submit" name="upload" value="Last opp" /> <?php echo $output; ?> </table> </body> </html> Lenke til kommentar
cruzader Skrevet 27. november 2010 Del Skrevet 27. november 2010 Du har ikke tilfeldigvis utelatt noe fra koden? siden feilen er med $end på linje 261 mens koden over er 249linjer. does not compute Lenke til kommentar
Thomas. Skrevet 27. november 2010 Del Skrevet 27. november 2010 (endret) Du har noen merkelige if, elseif strukturer. Som dette: <?php if ($save_values && ($_POST['folder_radio'] == 'root')) { elseif(isset($print_db) && ($row->folder == 'root')) { ?> CHECKED <?php } elseif(!isset($print_db) && !isset($save_values)) { ?> CHECKED <?php } Du bør du lese litt mer om if, elseif og else http://php.net/manua...ures.elseif.php Endret 27. november 2010 av Thomas. Lenke til kommentar
norsemanGrey Skrevet 28. november 2010 Forfatter Del Skrevet 28. november 2010 Du har noen merkelige if, elseif strukturer. Som dette: <?php if ($save_values && ($_POST['folder_radio'] == 'root')) { elseif(isset($print_db) && ($row->folder == 'root')) { ?> CHECKED <?php } elseif(!isset($print_db) && !isset($save_values)) { ?> CHECKED <?php } Du bør du lese litt mer om if, elseif og else http://php.net/manua...ures.elseif.php Ja det var noe Dreamweaver ikke likte med de der, men jeg tror ikke de er årsaken til feilmld jeg har fått når jeg prøver å åpne siden. Lenke til kommentar
Thomas. Skrevet 28. november 2010 Del Skrevet 28. november 2010 Du får som regel sånn type error når du har glemt en } I posten min over har du glemt } etter if, og vil skape trøbbel for resten av koden. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå