これは学生のプロフィール情報フォームであり、すべてのデータが mysql テーブルに完全に保存されているフォームを送信すると正常に機能しますが、情報を含む写真をアップロードしたい
フォームを送信した後、フォームに入力して画像を添付するとき
画像ディレクトリにはアップロードされませんが、mysql テーブルの写真名は完全に保存されますが、画像フォルダにはアップロードされません。
どうすればこの問題を解決できますか?
フォームを送信
<form action="" method="post">
<div>
<p><span class="style9"><strong>G.R.N No:</strong></span><strong> *</strong>
<input name="grn" type="text" value="<?php echo $grn; ?>" size="50" />
</p>
<p><span class="style9"><strong>Name:</strong></span><strong> *</strong>
<input name="name" type="text" value="<?php echo $name; ?>" size="50" />
</p>
<p><span class="style9"><strong>Home Address:</strong></span><strong> *</strong>
<textarea name="address" cols="50"><?php echo $address; ?></textarea>
</p>
<p><span class="style9"><strong>Father Name:</strong></span><strong> *</strong>
<input name="fathername" type="text" value="<?php echo $fathername; ?>" size="50" />
</p>
<p><span class="style9"><strong>Mother Name:</strong></span><strong> *</strong>
<input name="mothername" type="text" value="<?php echo $mothername; ?>" size="50" />
</p>
<p><span class="style9"><strong>Date Of Birth :</strong></span><strong> *</strong>
<input name="age" type="text" value="<?php echo $age; ?>" size="50" />
</p>
<p><span class="style9"><strong>Religion :</strong></span><strong> *</strong>
<input name="religion" type="text" value="<?php echo $religion; ?>" size="50" />
</p>
<p><span class="style9"><strong>Parents Cell No :</strong></span><strong> *</strong>
<input name="phoneno" type="text" value="<?php echo $phoneno; ?>"/>
</p>
<p><strong>Home Phone No:</strong>
<input name="phoneno2" type="text" value="<?php echo $phoneno2; ?>" />
</p>
<p><span class="style9"><strong>Date Of Join :</strong></span><strong> *</strong>
<input id="fullDate" name="dateofjoin" type="text" value="<?php echo $dateofjoin; ?>" size="50" />
</p>
<p><span class="style9"><strong>Class :</strong></span><strong> *</strong>
<input name="class" type="text" value="<?php echo $class; ?>" size="50" />
</p>
<p><span class="style9"><strong>N.I.C :</strong></span><strong> *</strong>
<input name="nic" type="text" value="<?php echo $nic; ?>" size="50" />
</p>
<span class="style9"><strong>Branch:</strong></span><strong> *</strong>
<input name="branch" type="text" value="<?php echo $branch; ?>" size="50">
<span class="style9"><strong>Photo:</strong></span><strong> *</strong>
<input type="hidden" name="size" value="350000">
<input type="file" name="photo">
<br/>
<p class="style1">* required</p>
<input type="submit" name="submit" value="Submit">
</div>
</form>
phpコード
<?php
}
//This is the directory where images will be saved
$target = "images/";
$target = $target . basename( $_FILES['photo']['name']);
//This gets all the other information from the form
$photo=($_FILES['photo']['name']);
//Writes the photo to the server
if(move_uploaded_file($_FILES['photo']['tmp_name'], $target))
{
//Tells you if its all ok
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded, and your information has been added to the directory";
}
// connect to the database
include('connect-db.php');
// check if the form has been submitted. If it has, start to process the form and save it to the database
if (isset($_POST['submit']))
{
// get form data, making sure it is valid
$grn = mysql_real_escape_string(htmlspecialchars($_POST['grn']));
$name = mysql_real_escape_string(htmlspecialchars($_POST['name']));
$address = mysql_real_escape_string(htmlspecialchars($_POST['address']));
$branch = mysql_real_escape_string(htmlspecialchars($_POST['branch']));
$phoneno = mysql_real_escape_string(htmlspecialchars($_POST['phoneno']));
$phoneno2 = mysql_real_escape_string(htmlspecialchars($_POST['phoneno2']));
$fathername = mysql_real_escape_string(htmlspecialchars($_POST['fathername']));
$mothername = mysql_real_escape_string(htmlspecialchars($_POST['mothername']));
$age = mysql_real_escape_string(htmlspecialchars($_POST['age']));
$religion = mysql_real_escape_string(htmlspecialchars($_POST['religion']));
$nic = mysql_real_escape_string(htmlspecialchars($_POST['nic']));
$class = mysql_real_escape_string(htmlspecialchars($_POST['class']));
$dateofjoin = mysql_real_escape_string(htmlspecialchars($_POST['dateofjoin']));
$photo = mysql_real_escape_string(htmlspecialchars($_POST['photo']));
// check to make sure both fields are entered
if ($grn == '' || $name == '' || $address == '')
{
// generate error message
$error = 'ERROR: Please fill in all required fields!';
// if either field is blank, display the form again
renderForm($grn, $name, $address, $branch, $phoneno, $phoneno2, $fathername, $mothername, $age, $religion, $nic, $class, $dateofjoin,$error);
}
else
{
// save the data to the database
mysql_query("INSERT admission SET grn='$grn', name='$name', address='$address', branch='$branch', phoneno='$phoneno', phoneno2='$phoneno2', fathername='$fathername', mothername='$mothername', age='$age', religion='$religion', nic='$nic', class='$class', dateofjoin='$dateofjoin', photo='$photo'")
or die(mysql_error());
echo "<center>Admission Complete!</center>";
// once saved, redirect back to the view page
}
}
else
// if the form hasn't been submitted, display the form
{
renderForm('','','','','','','','','','','','','','');
}
?>