Virker ikke på webhotel (Linux), men er ok på min XP maskine
Jeg har lavet et CMS system i Dreamwaever MX2004 i php script. Det virker fint på min PC (WinXP),hvor jeg har installeret Apache, mysql. MEN... Så er det jo meningen at det skal køre på mit webholtel,
Som er Surftown (Linux). Mit problem er nu at jeg har et upload-script, hvorpå jeg kan logge ind på mit CMS,
og uploade billedfiler. Disse billeder uploades, og filnavnet smides i en database. Så er det meningen
at jeg kan lægge billederne på mine websider som jeg deigner i mit CMS system. Til dette bruger jeg en
Richtexteditor, som jeg har DL færdig og er gratis. Jeg kan dog ikke finde ud af koden i den men det
skulle vel og være ligemeget. Når jeg nu vælger mine billeder i editoren, vises de ikke på siderne. Jeg
har set på disse forum´s, at mit problem nok er RAWURLENCODE, som skal bruges pga tegnset. Hvordan skal
jeg gøre? Jeg håber at det er nok at køre funktionerne på uploadetscriptet, idet jeg ikke kan rette på
richeditoren, som jeg "starter". Mine billeder havner rigtigt nok i mit uploadet bibliotek, og i DB,
men det virker kun, hvis jeg ændre i HTML-filen bagefter, og sætter %20 efter billedetfilnavnet.
Hjælp venligst med at tilrette nedenstående uploadscript!
<?php
session_start();
$MM_authorizedUsers = "";
$MM_donotCheckaccess = "true";
// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) {
// For security, start by assuming the visitor is NOT authorized.
$isValid = False;
// When a visitor has logged into this site, the Session variable MM_Username set equal to their username.
// Therefore, we know that a user is NOT logged in if that Session variable is blank.
if (!empty($UserName)) {
// Besides being logged in, you may restrict access to only certain users based on an ID established when they login.
// Parse the strings into arrays.
$arrUsers = Explode(",", $strUsers);
$arrGroups = Explode(",", $strGroups);
if (in_array($UserName, $arrUsers)) {
$isValid = true;
}
// Or, you may restrict access to only certain users based on their username.
if (in_array($UserGroup, $arrGroups)) {
$isValid = true;
}
if (($strUsers == "") && true) {
$isValid = true;
}
}
return $isValid;
}
$MM_restrictGoTo = "login.php";
if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {
$MM_qsChar = "?";
$MM_referrer = $_SERVER['PHP_SELF'];
if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
if (isset($QUERY_STRING) && strlen($QUERY_STRING) > 0)
$MM_referrer .= "?" . $QUERY_STRING;
$MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
header("Location: ". $MM_restrictGoTo);
exit;
}
?>
<?php require_once('../Connections/DB.php');
mysql_select_db($database_DB, $DB);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Upload</title>
</head>
<body>
<?php
if (isset($_FILES['filnavn'])) {
print "Fil der er blevet overført: {$_FILES['filnavn']['name']}<p>\n";
$query = "INSERT INTO hovawartfil SET navn='".$_FILES['filnavn']['name']."'";
$result1 = mysql_query($query, $DB) or die (mysql_error());
}
{
$tempfile = $_FILES['filnavn']['tmp_name'];
$dest = rawurlencode($_FILES['filnavn']['name']);
$destination = "../billeder/{$dest} ";
echo "<p>".$destination."</p>";
copy ($tempfile, $destination);
}
?>
<form action="upload.php" method="post" enctype="multipart/form-data" name="form1">
<p>Fil, der skal overføres:
<input name="filnavn" type="file" id="filnavn">
</p>
<p>
<input type="submit" name="Submit" value="overfør">
</p>
</form>
</body>
</html>