verkeerde var voor versturen content naar db
Ik heb het onderstaand script. Hiermee wil ik de bestandsnaam in de laatste collom (foto) van mijn database plaatsen. Alleen gaat er iets fout. Ik denk zelf dat ik iets fout doe in de query bij variabele new_file.
kan iemand hier naar kijken voor mij??
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
//logged_on.php is de file die controleert of je wel bent ingelogd
include("..//includes/connect.php");
//functie voor de ecscape bij $msg_tekst
function escape( $strVar, $resDbConnection = null )
{
if ( get_magic_quotes_gpc() == 0 )
{
// don't escape integers
if ( !ctype_digit( $strVar ) )
$strVar = mysql_real_escape_string( $strVar, $resDbConnection );
}
return $strVar;
}
//onderstaande voegt een nieuw bericht toe aan de database als er gegevens zijn meegezonden
if(!empty($_POST)){
$query = "INSERT INTO messages VALUES('',CURDATE(),CURTIME(),'". $_POST["msg_title" ]. "','". $_POST["msg_type"]. "','". escape($msg_text). "','". $user_id. "','". $new_file. "');";
$result = mysql_query($query) or die(mysql_error());
header("location: messages.php");
}
?>
//logged_on.php is de file die controleert of je wel bent ingelogd
include("..//includes/connect.php");
//functie voor de ecscape bij $msg_tekst
function escape( $strVar, $resDbConnection = null )
{
if ( get_magic_quotes_gpc() == 0 )
{
// don't escape integers
if ( !ctype_digit( $strVar ) )
$strVar = mysql_real_escape_string( $strVar, $resDbConnection );
}
return $strVar;
}
//onderstaande voegt een nieuw bericht toe aan de database als er gegevens zijn meegezonden
if(!empty($_POST)){
$query = "INSERT INTO messages VALUES('',CURDATE(),CURTIME(),'". $_POST["msg_title" ]. "','". $_POST["msg_type"]. "','". escape($msg_text). "','". $user_id. "','". $new_file. "');";
$result = mysql_query($query) or die(mysql_error());
header("location: messages.php");
}
?>
<form
name="insert_post" action="" method="post" onsubmit="save_in_textarea_all();">
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
$ThisFileName = basename(__FILE__); // get the file name
$path = str_replace("/cms/scripts/".$ThisFileName,"",__FILE__); // get the directory path
$upload_dir = $path. "/Image/"; // be shure php has access to this dir (chmod)
$new_file = $upload_dir."/".$_FILES['userfile']['name'];
if ($_POST['upload'] == "Upload") {
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
move_uploaded_file($_FILES['userfile']['tmp_name'], $new_file) or
print "could not store $new_file ";
chmod ($upload_dir. $_FILES['userfile']['name'], 0777);
$query = "INSERT INTO messages VALUES = 'foto'
WHERE foto = '". $new_file. "' ;";
$result = mysql_query($query) or die(mysql_error());
header("location: ../index.php");
}
else
{
switch ($_FILES['tmp_name']['error']) {
case 0:
print "<a href='#' onClick='history.back()'>Terug</a><br>!is_uploaded_file.., no file upload?<br><a href='../index.php'> Gewoon verder gaan!</a> ";
break;
case 1:
print "<br><strong> U heeft geen foto aan dit messages toegevoegt </strong><br><a href='#' onClick='history.back()'>Terug </a>(informatie niet versturen maar opnieuw bewerken / foto toevoegen) <br><a href='../index.php'> Door gaan </a> (messages plaatsen op website zonder foto)";
break;
default:
print "<br>Onbekende foutmelding<br><a href='#' onClick='history.back()'>Terug</a>(informatie niet versturen maar opnieuw bewerken)<a href='../index.php'> Gewoon verder gaan!</a> (messages plaatsen op website zonder 100% foutcontrole. Controleer of het messages is geplaast)";
}
}
}
?>
$ThisFileName = basename(__FILE__); // get the file name
$path = str_replace("/cms/scripts/".$ThisFileName,"",__FILE__); // get the directory path
$upload_dir = $path. "/Image/"; // be shure php has access to this dir (chmod)
$new_file = $upload_dir."/".$_FILES['userfile']['name'];
if ($_POST['upload'] == "Upload") {
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
move_uploaded_file($_FILES['userfile']['tmp_name'], $new_file) or
print "could not store $new_file ";
chmod ($upload_dir. $_FILES['userfile']['name'], 0777);
$query = "INSERT INTO messages VALUES = 'foto'
WHERE foto = '". $new_file. "' ;";
$result = mysql_query($query) or die(mysql_error());
header("location: ../index.php");
}
else
{
switch ($_FILES['tmp_name']['error']) {
case 0:
print "<a href='#' onClick='history.back()'>Terug</a><br>!is_uploaded_file.., no file upload?<br><a href='../index.php'> Gewoon verder gaan!</a> ";
break;
case 1:
print "<br><strong> U heeft geen foto aan dit messages toegevoegt </strong><br><a href='#' onClick='history.back()'>Terug </a>(informatie niet versturen maar opnieuw bewerken / foto toevoegen) <br><a href='../index.php'> Door gaan </a> (messages plaatsen op website zonder foto)";
break;
default:
print "<br>Onbekende foutmelding<br><a href='#' onClick='history.back()'>Terug</a>(informatie niet versturen maar opnieuw bewerken)<a href='../index.php'> Gewoon verder gaan!</a> (messages plaatsen op website zonder 100% foutcontrole. Controleer of het messages is geplaast)";
}
}
}
?>
<form enctype="multipart/form-data" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
Upload this file: <input name="userfile" type="file">
<input type="submit" value="verzend"></td>
</form>
</body>
</html>
Quote:
Alleen gaat er iets fout.
En nu mogen wij gaan raden wat er fout gaat? Dat gaat natuurlijk niet werken...
Echo de query eens, dan weet je wat er richting de database wordt gestuurd. Dan kun je zelf wel gaan uitzoeken wat er verkeerd gaat, nadat je hebt bedacht wat daar de definitie van is...
ff tussen door.?
Wat doet die dubbele slash daar, mag dat en wat is de functie dan?
Quote:
$upload_dir = $path. "/Image/"; // be shure php has access to this dir (chmod)
Gewijzigd op 01/01/1970 01:00:00 door ArendJan
ja dat heb ik gedaan. het is ondertussen gelukt. ik had de verkeerde var die ik wilde uploaden
(: Volgende keer even melden wat de error is of als er wel een error is :)