- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用下面的代码时无法使图像上传功能正常工作,并出现以下错误消息:
'脚本'/database.php'第135行发生错误:未定义索引:图像'
这部分是:'if (is_uploaded_file ($_FILES ['image']['tmp_name'])) {'
我以前做过一些 php/mysql 表单,但这是我第一次尝试使用图像上传。如果可能的话,我正在寻找一个只允许 pdf 和 jpeg 并将上传限制为 1.5 meg 的表单。
表单的其余部分工作正常,除此之外,我已将服务器上的上传文件夹上的 CHMOD 更改为 777。有什么想法或建议吗?
<?php # index.php
require_once ('./includes/config.inc.php');
$page_title = 'N-Club Battery: Add a Sale';
include ('./includes/header.html');
if (!isset($_SESSION['sp_user_id'])) {
$url = 'http://' . $_SERVER['HTTP_HOST']
. dirname($_SERVER['PHP_SELF']);
if ((substr($url, -1) == '/') OR (substr($url, -1) == '\\') ) {
$url = substr ($url, 0, -1); // Chop off the slash.
}
$url .= '/login.php';
ob_end_clean(); // Delete the buffer.
header("Location: $url");
exit(); // Quit the script.
}
$users = $_SESSION['sp_user_id'];
?>
<h1>Heading</h1>
<?php
if (isset($_POST['submitted'])) {// Handle the form.
require_once ('/database.php');
$errors = array(); // Initialize error array.
// Check for a quantity.
if (empty($_POST['npc_quantity'])) {
$errors[] = '<p>• You forgot to enter the Quantity.</p>';
} else {
$quantity = escape_data($_POST['npc_quantity']);
}
// Check for a customer name.
if (empty($_POST['npc_customer_name'])) {
$errors[] = '<p>• You forgot to enter the Customer Name</p>';
} else {
$customers = escape_data($_POST['npc_customer_name']);
}
// Check for an registration number
if (empty($_POST['npc_registration_no'])) {
$errors[] = '• You forgot to enter the Customer Rego Number.';
} else {
$rego = escape_data($_POST['npc_registration_no']);
}
// Check for an SUO number
if (empty($_POST['npc_suo_no'])) {
$errors[] = '• You forgot to enter the SUO Number';
} else {
$suo_no = escape_data($_POST['npc_suo_no']);
}
// Check for an A-Club number
if (empty($_POST['npc_amb_club_no'])) {
$errors[] = '• You forgot to enter the A-Club Number';
} else {
$amb_no = escape_data($_POST['npc_amb_club_no']);
}
// Check for a Repair Order
if (empty($_POST['npc_repair_order'])) {
$errors[] = '• You forgot to enter the Repair Order';
} else {
$rep_no = escape_data($_POST['npc_repair_order']);
}
// Check for a Invoice Number.
if (empty($_POST['npc_invoice_no'])) {
$errors[] = '<p>• You forgot to enter the Invoice Number.</p>';
} else {
$inv = escape_data($_POST['npc_invoice_no']);
}
// Check for a userdate.
if (empty($_POST['npc_entry_userdate'])) {
$errors[] = '<p>• You forgot to enter the entry userdate.</p>';
} else {
$inv_date = escape_data($_POST['npc_entry_userdate']);
}
// Check for an image.
if (is_uploaded_file ($_FILES ['image']['tmp_name'])) {
if (move_uploaded_file($_FILES ['image']['tmp_name'],
"/uploadsfolder/{$_FILES['image']['name']}")) { // Move the file over.
echo '<p>The file has been uploaded!</p>';
} else { // Couldn't move the file over.
echo '<p><font color="red"> The thumbnail image could not be uploaded.</font></p>';
$i = FALSE;
}
$i = $_FILES['image']['name'];
} else {
$i = FALSE;
}
if (empty($errors)) {
$uid = @mysql_insert_id();
// Add the user.
$query = "INSERT INTO npc_sales_list
(npc_item_id , sp_user_id, npc_battery_n_code, npc_battery_other_code, npc_quantity ,
npc_customer_name, npc_registration_no , npc_suo_no, npc_amb_club_no , npc_repair_order,
npc_invoice_no, npc_entry_userdate, npc_image_upload, npc_usertype,
npc_points, npc_bonus_points, npc_entry_date) VALUES
('$uid', '$users', '$_POST[npc_battery_n_code]' ,
'$_POST[npc_battery_other_code]' , '$quantity' , '$customers',
'$rego' , '$suo_no' , '$amb_no', '$rep_no', '$inv', '$inv_date',
'$i' , Battery' , '5' , '0' , NOW())";
$result = @mysql_query ($query); // Run the query.
if (mysql_affected_rows() == 1) {
//Finish the page.
echo '<p>The sale with invoice number: <strong>' . $inv . '</strong><br />
is now registered into the system.</p>';
include ('./includes/footer.html'); // Include the HTML footer.
exit();
} else { // If it did not run OK.
echo '<p><font color="red" size="+1">You could not be
registered due to a system error. We apologize for any
inconvenience.</font></p>';
}
} else { // If one of the data tests failed.
echo '<p><font color="red" size="+1">Please check all mandatory fields are complete and try again.
</font></p>';
}
mysql_close(); // Close the database connection.
} // End of the main Submit conditional.
?>
<form action="logsales.php" method="post">
<table width="520" border="0" cellspacing="3" cellpadding="2">
<tr>
<td><div align="right">N-Club Battery No<span class="style2">*</span></div></td>
<td>
<select name="npc_battery_n_code" id="npc_battery_n_code">
<option value="None" <?php if (isset($_POST['npc_battery_n_code']) && $_POST['npc_battery_n_code'] == 'None')
{echo 'selected="selected"';} ?>>None</option>
<option value="55D23L" <?php if (isset($_POST['npc_battery_n_code']) && $_POST['npc_battery_n_code'] == '55D23L')
{echo 'selected="selected"';} ?>>55D23L</option>
<option value="55D23R" <?php if (isset($_POST['npc_battery_n_code']) && $_POST['npc_battery_n_code'] == '55D23R')
{echo 'selected="selected"';} ?>>55D23R</option>
<option value="75D23R" <?php if (isset($_POST['npc_battery_n_code']) && $_POST['npc_battery_n_code'] == '75D23R')
{echo 'selected="selected"';} ?>>75D23R</option>
</select>
</td>
</tr>
<tr>
<td width="184"><div align="right">Other Battery No<span class="style2">*</span></div></td>
<td width="323">
<select name="npc_battery_other_code" id="npc_battery_other_code">
<option value="None" <?php if (isset($_POST['npc_battery_other_code']) && $_POST['npc_battery_other_code'] == 'None')
{echo 'selected="selected"';} ?>>None</option>
<option value="3" <?php if (isset($_POST['npc_battery_other_code']) && $_POST['npc_battery_other_code'] == '3')
{echo 'selected="selected"';} ?>>3</option>
<option value="26" <?php if (isset($_POST['npc_battery_other_code']) && $_POST['npc_battery_other_code'] == '26')
{echo 'selected="selected"';} ?>>26</option>
<option value="29" <?php if (isset($_POST['npc_battery_other_code']) && $_POST['npc_battery_other_code'] == '29')
{echo 'selected="selected"';} ?>>29</option>
<option value="30" <?php if (isset($_POST['npc_battery_other_code']) && $_POST['npc_battery_other_code'] == '30')
{echo 'selected="selected"';} ?>>30</option>
</select></td>
</tr>
<tr>
<td><div align="right">Quantity <span class="style2">*</span></div></td>
<td><input type="text" name="npc_quantity" size="10" maxlength="10"
value="<?php if (isset($_POST['npc_quantity'])) echo $_POST['npc_quantity']; ?>" /></td>
</tr>
<tr>
<td><div align="right">Customer Name <span class="style2">*</span></div></td>
<td><input type="text" name="npc_customer_name" size="30" maxlength="30"
value="<?php if (isset($_POST['npc_customer_name'])) echo $_POST['npc_customer_name']; ?>" /></td>
</tr>
<tr>
<td><div align="right">Customer Rego number <span class="style2">*</span></div></td>
<td><input type="text" name="npc_registration_no" size="10" maxlength="7"
value="<?php if (isset($_POST['npc_registration_no'])) echo $_POST['npc_registration_no']; ?>" /></td>
</tr>
<tr>
<td><div align="right">SUO Number <span class="style2">*</span></div></td>
<td><input type="text" name="npc_suo_no" size="20" maxlength="30"
value="<?php if (isset($_POST['npc_suo_no'])) echo $_POST['npc_suo_no']; ?>" /></td>
</tr>
<tr>
<td><div align="right">A-Club ID <span class="style2">*</span></div></td>
<td><input type="text" name="npc_amb_club_no" size="20" maxlength="30"
value="<?php if (isset($_POST['npc_amb_club_no'])) echo $_POST['npc_amb_club_no']; ?>" /></td>
</tr>
<tr>
<td><div align="right">Repair Order<span class="style2">*</span></div></td>
<td><input type="text" name="npc_repair_order" size="20" maxlength="30"
value="<?php if (isset($_POST['npc_repair_order'])) echo $_POST['npc_repair_order']; ?>" /></td>
</tr>
<tr>
<td><div align="right">Invoice Number <span class="style2">*</span></div></td>
<td><input type="text" name="npc_invoice_no" size="20" maxlength="30"
value="<?php if (isset($_POST['npc_invoice_no'])) echo $_POST['npc_invoice_no']; ?>" /></td>
</tr>
<tr>
<td><div align="right">Date of Invoice <span class="style2">*</span></div></td>
<td><input type="text" name="npc_entry_userdate" size="20" maxlength="10"
value="<?php if (isset($_POST['npc_entry_userdate'])) echo $_POST['npc_entry_userdate']; ?>" /></td>
</tr>
<tr>
<td></td>
<td>
<span class="sml_italics">MM-DD-YYYY </span></td>
</tr>
<tr>
<td><div align="right">Invoice copy<span class="style2">*</span></div></td>
<td>
<input type="file" name="image" size="30" maxlength="60" /> <br />
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Submit" /></p><input type="hidden" name="submitted" value="TRUE" />
</td>
</tr>
</table>
</form>
<p>footer</p>
<?php
include ('./includes/footer.html');
?>
最佳答案
您的<form>
没有enctype
属性。
<form action="logsales.php" method="post">
它需要是:
<form action="logsales.php" method="post" enctype="multipart/form-data">
没有它,您的浏览器不知道如何将文件发送到您的服务器,因此没有 enctype
,它不会起作用。更多信息请访问W3 .
关于php - 图片上传 php : undefined index 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11750866/
我想使用 Angular.js 转换从服务器获取的图像数据(用于 ionic 框架),我使用了这段代码: $http.post(link, { token: token,
我正在为我的应用制作一个登陆页面。如果它们在 iOS 设备上,我希望它只显示“App Store”图标,但在 Android 上隐藏它。如果它们在 Android 设备上,则只有“Play Store
如何在同一页面上多次显示同一张图片? function xdf(){ for (i=0;ihello world'); } } 此代码显示“hello world”10 次。我想要同样的东西,
您好,我有一个 1px 的 png 文件,我试图将其设置为两个水平相邻的 div 的背景图像。html 和 css 如下:- hi hello css是这样的 div { width: 50%
我的 PHP 项目安装了 Prestashop 1.4.9.0。当我添加一个新产品时,我上传了一个PNG格式的图片,但是当它在客户端显示时,图片是JPG格式的。 如何保留图片扩展名? 最佳答案 在后台
我用 http://www.regexper.com查看一个象形表示正则表达式很多。我想要一种理想的方法: 向站点发送正则表达式 打开显示该表达式的站点 例如,让我们使用正则表达式:"\\s*foo[
我不知道为什么在 MAC OS X (Mail 6.2) 的邮件客户端中图像显示如下: 和其他邮件客户端,如 gmail、outlook 或 private,图像是正确的,看起来像这样: PHP邮件程
我正在使用此处找到的示例。 Mozilla developers 我对这个例子很感兴趣。 function upload(postUrl, fieldName, filePath) { var f
我不知道为什么在 MAC OS X (Mail 6.2) 的邮件客户端中图像显示如下: 和其他邮件客户端,如 gmail、outlook 或 private,图像是正确的,看起来像这样: PHP邮件程
我的问题是如何根据用户在javafx中选择的复选框和/或单选按钮生成带有汽车图片设置的按钮? 我正在用汽车图片模拟汽车经销商网站。用户应该能够通过单击复选框和/或单选按钮选择来过滤显示的图片。 我首先
我正在开发Java客户端,它应该支持多种语言。为了翻译文本,我使用 Java ResourceBoundle,它工作正常。 现在问题出在图像上。客户端应加载大约 50 张图像,这些图像是棋盘游戏的特定
我对 jQuery 还很陌生,但我正在寻找一个简单的脚本,通过淡入和淡出的方式在标题中循环 3 或 4 个背景图像。它们是透明的 png,因此我尝试过的许多 slider 都不起作用。 有什么想法吗?
我有一个 HTML 文档,其中包含本地文件的图像,例如: ios - 物理主体大于它分配给的纹理(图片)
我的 Sprite “physicsBody ”属性之一出现问题。 我已经放置了physicsBody节点“barn ”,直接位于 non-physicsBody 之上节点“mound”没有任何问题。
我想剪切图片的特定部分并用它来将剪切的图像与存储在 HDD 中的另一个图像进行比较。问题是我不知道如何获取源图像的特定部分。我知道要裁剪的图像的位置 (X,Y)。 最佳答案 这将加载原始版本并创建
如何使用裁剪实用程序在 javascript 中实现图像 uploader 。你如何通过 AJAX 提交图像文件?解决方案是否跨域兼容? 最佳答案 要实现具有裁剪功能的图片上传小部件,您必须: 将图像
public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityRes
我想在我的 android 应用程序中显示一个国家的图片。国家必须按地区划分。因此,当用户单击特定区域时,应打开特定屏幕。区域也应该用线分隔,以便用户可以看到区域的开始/结束位置。 这是一个国家的例子
首先我想对这个问题表示歉意,因为我知道已经有很多人问过这个问题了。但我搜索的所有答案都没有解决我的问题。所以希望您考虑这个问题并帮助我解决这个问题。 所以基本上我正在尝试上传图像文件,当我提交它时,会
我几乎有了想要的数据...但需要帮助过滤它。 (图在底部) 下面的查询返回状态为 Member-id5 的所有记录,但我需要对其进行过滤。例如:如果我对等做了一个简单的查询。 (exp_channel
我是一名优秀的程序员,十分优秀!