0

2 ページあります。1 つはメインで、もう 1 つはそれに含まれます。

メインページ

<?php
$var_value = 7;
$_SESSION['varname'] = $var_value;
include 'upload_image.php';
?>

そして含まれるページ

<?php
include 'init.php';

if (!logged_in()) {
header('Location: index.php');
exit();
} 

include 'template/header.php';  
?>

<h3>Upload image</h3>

<?php

if (isset($_FILES['image'], $_POST['image_n'], $_POST['image_description'])) {
$image_name = $_FILES['image']['name'];
$bytes = $_FILES['image']['size'];
$image_temp = $_FILES['image']['tmp_name'];
$image_n = $_POST['image_n'];
$image_description = $_POST['image_description'];

$allowed_ext = array('jpg', 'jpeg', 'png', 'gif', 'rar', 'pdf');
//$image_ext = strtolower(end(explode('.', $image_name)));

$image_ext = pathinfo($image_name, PATHINFO_EXTENSION);

$album_id = $_SESSION['varname'];

$errors = array();

if (empty($image_name) || empty($album_id) || empty($image_n) ||         empty($image_description)) {

    $errors[] = 'Something is missing';
} else {

if (strlen($album_name) > 55 || strlen($album_description) > 255) {
        $errors[] = 'One or more fields contains too many characters';
    }

if (in_array($image_ext, $allowed_ext) === false) {
    $errors[] = 'File type not allowed';

}

//if ($image_size > 2097152) {
//  $errors[] = 'Maximum file size is 2mb';
//}

if (album_check($album_id) === false) {
    $errors[] = 'Couldn\'t upload to that album';
}

}

if (!empty($errors)) {
    foreach ($errors as $error) {
        echo $error, '<br />';
    }

} else {
    $byte = formatSizeUnits($bytes);
    upload_image($image_temp, $image_ext, $album_id, $image_n, $image_description, $byte);
    header('Location: view_album.php?album_id='.$album_id);
    exit();
}
}

$albums = get_albums();

if (empty($albums)) {
echo'<p>You don\'t have any albums. <a href="create_album.php">Create an album</a></p>';
} else {
?>

<form action="" method="post" enctype="multipart/form-data">
<div class="choose">
    <p>Choose a file:<br /><input type="file" name="image" /></p>
    </div>
        <div class="des">
        <p>Name*:<br /><input type="text" name="image_n" maxlength="55"/></p>
        <p>Description*:<br /><textarea name="image_description" rows="6" cols="35" maxlength="255"></textarea></p>


    <p><input type="submit" value="Upload" /></p>
    </div>
</form>
<div class="foot">
<?php   
}

include 'template/footer.php';  
?>
</div>

2番目のページの最後のフォームはロードされません..しかし、メインページの最初の行を削除すると $var_value = 7 ; 最後のロードのフォーム..何が問題なのかわかりません。または、メインでアルバムの値を設定して、含まれているページに渡す別の方法があります。

4

2 に答える 2

1

$album_idから設定された に問題が見つからない場合$var_value、含まれるファイルは次のことを行います。

$byte = formatSizeUnits($bytes);
upload_image($image_temp, $image_ext, $album_id, $image_n, $image_description, $byte);
header('Location: view_album.php?album_id='.$album_id);
exit();

そのため、フォームを表示する部分には到達しません。

于 2013-08-28T20:00:26.767 に答える
0

2番目のコードが含まれていますか?もしそうなら、あなたはただ使うことができます

$album_id = $var_value 

それ以外の:

$album_id = $_SESSION['varname'];

コードの 2 番目のピースで... セッションは必要ありません。

于 2013-08-28T19:57:50.103 に答える