如何使用记录插入向导上传文件? Dreamweaver中的PHP
这里是插入代码的PHP如何使用记录插入向导上传文件? Dreamweaver中的PHP
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO siswa (NISN, Kode_KK, Nama_Siswa, Alamat_Siswa, Tgl_Lahir, Foto_siswa) VALUES (%s, %s, %s, %s, %s, %s)",
GetSQLValueString($_POST['NISN'], "int"),
GetSQLValueString($_POST['Kode_KK'], "int"),
GetSQLValueString($_POST['Nama_Siswa'], "text"),
GetSQLValueString($_POST['Alamat_Siswa'], "text"),
GetSQLValueString($_POST['Tgl_Lahir'], "date"),
GetSQLValueString($_POST['Foto_siswa'], "text"));
mysql_select_db($database_praukkcon, $praukkcon);
$Result1 = mysql_query($insertSQL, $praukkcon) or die(mysql_error());
}
?>
这里是我的插入表单代码
<form method="post" name="form1" action="<?php echo $editFormAction; ?>" enctype="multipart/form-data">
<table width="490" height="308" align="center">
<tr valign="baseline">
<td height="24" align="right" valign="middle" nowrap><div align="center">NISN:</div></td>
<td valign="middle"><input type="text" name="NISN" value="MAKS 10" size="32" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'MAKS 10';}"></td>
</tr>
<tr valign="baseline">
<td height="24" align="right" valign="middle" nowrap><div align="center">Kode_KK:</div></td>
<td valign="middle"><input type="text" name="Kode_KK" value="MAKS 4" size="32" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'MAKS 4';}"></td>
</tr>
<tr valign="baseline">
<td height="24" align="right" valign="middle" nowrap><div align="center">Nama_Siswa:</div></td>
<td valign="middle"><input type="text" name="Nama_Siswa" value="MAKS 50" size="32" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'MAKS 50';}"></td>
</tr>
<tr valign="baseline">
<td height="24" align="right" valign="middle" nowrap><div align="center">Alamat_Siswa:</div></td>
<td valign="middle"><input type="text" name="Alamat_Siswa" value="" size="32"> </td>
</tr>
<tr valign="baseline">
<td height="24" align="right" valign="middle" nowrap><div align="center">Tgl_Lahir:</div></td>
<td valign="middle"><input type="text" name="Tgl_Lahir" value="YYYY-MM-DD" size="32" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'YYYY-MM-DD';}"></td>
</tr>
<tr valign="baseline">
<td height="24" align="right" valign="middle" nowrap><div align="center">Foto_siswa:</div></td>
<td valign="middle"><input type="file" name="Foto_siswa" value="" size="32"> </td>
</tr>
<tr valign="baseline">
<td height="26" align="right" valign="middle" nowrap><div align="center"></div></td>
<td valign="middle"><div align="center">
<input type="submit" value="INSERT DATA">
</div></td>
</tr>
</table>
<input type="hidden" name="MM_insert" value="form1">
</form>
这一切,如果youre想知道哪里是连接代码,我用使用包括这种形式。所以连接功能在主页面。
嗨,你可以试试这个代码,请确保你会理解注释说明上传文件。 1:当首次使用文件上传器时,我们使用表单标签中的enctype =“multipart/form-data”。
2:文件正在使用$ _FILES数组没有_POST $
3后门柱检索:我们可以直接保存在数据库文件或目录
我:如果您直接在数据库保存文件,那么你应该在db列名中使用blob数据类型。
ii:如果将文件保存在目录中并将其名称保存为db。 [我在你的代码解释相同的东西]
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
//Here First upload a files in physical(drive) location
$_FileNameToSave = ''; //If file is not uploaded then initialize it value balnk
$target_file = '/fileuploader'; //put here your uploaded directory name or create a folder "fileuploader" in your project root directory
if($_FILES['Foto_siswa']['name'] && sizeof($_FILES['Foto_siswa']['name']) > 0) {
if (move_uploaded_file($_FILES["Foto_siswa"]["tmp_name"], $target_file))
{
$_FileNameToSave = $_FILES['Foto_siswa']['name'];
}
}
$insertSQL = sprintf("INSERT INTO siswa (NISN, Kode_KK, Nama_Siswa, Alamat_Siswa, Tgl_Lahir, Foto_siswa)
VALUES (%s, %s, %s, %s, %s, %s)",
GetSQLValueString($_POST['NISN'], "int"),
GetSQLValueString($_POST['Kode_KK'], "int"),
GetSQLValueString($_POST['Nama_Siswa'], "text"),
GetSQLValueString($_POST['Alamat_Siswa'], "text"),
GetSQLValueString($_POST['Tgl_Lahir'], "date"),
GetSQLValueString($_FileNameToSave, "text"));//file name to save in db
mysql_select_db($database_praukkcon, $praukkcon);
$Result1 = mysql_query($insertSQL, $praukkcon) or die(mysql_error());
}
?>
非法字符串偏移'Foto_siswa'在...下一步该怎么办? –
现在出来了:警告:move_uploaded_file(/ foto):无法打开流:权限被拒绝在C:\ xampp \ htdocs \ praukk \ admin \ Insert \ insertsiswa.php 45行 Warning:move_uploaded_file():Unable将45行上的C:\ xampp \ htdocs \ praukk \ admin \ Insert \ insertsiswa.php中的'C:\ xampp \ tmp \ php6F85.tmp'移动到'/ foto' 'Foto_siswa'列不能为空 –
我改变已经是blob的数据类型。也im通过此插入上传文件。不直接把文件放在一个文件夹中 –
我想知道什么是您的当前代码的问题; DW功能通常也过时了。你在使用'mysql_'函数吗? – chris85
我想上传文件,但我不知道在哪里放什么。我在互联网上搜索所有,但他们使用自己的插入代码。我使用的是录制插入向导。 –
该文件是图像类型。所以我需要它被存储在特定的文件夹中。我只是不知道这样做的代码。唯一存储的是文件的名称。但确切的文件不在文件夹中 –