verkeerd insert naar database
ik ben bezig met een admin pagina. de bedoeling is dat ik in deze pagina dus nieuws die in de database kan aanpassen. alleen heb ik 1 probleem. als ik dus mijn foto niet verander in de pagina haalt hij de bestaande foto uit de database ik weet niet wat ik verkeerd doe ?? als ik tevens een nieuwe foto upload werkt alles wel. kan iemand mij helpen !
Quote:
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?
include('verify.php');
// datas
$id = $_POST['id'];
$title = $_POST['title'];
$text = $_POST['text'];
$bigline = $_POST['bigline'];
$categorie = $_POST['categorie'];
$author = $_POST['author'];
$seo_url = $_POST['seo_url'];
$keywords = $_POST['keywords'];
$description = $_POST['description'];
$call = @mysql_fetch_array(mysql_query("SELECT * FROM $table_b WHERE ID='$id'"));
// Call for the name of categorie
$queryd = "SELECT * FROM $table_d WHERE ID=$categorie";
$resultd = mysql_query($queryd);
$mycat = @mysql_fetch_object($resultd);
$categorie_name = $mycat->naam_categorie;
if(empty($_FILES['preview']['name'])) { $newfilename = $call['preview']; }
else {
// Image file data
$fileName = $_FILES['preview']['name'];
$tmpName = $_FILES['preview']['tmp_name'];
// Extension allowed
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
// Check extension
$extension = strrchr($_FILES['preview']['name'], '.');
//Test it...
if(!in_array($extension, $extensions)) //if extension is not in the array... ALERT!!
{
print "Only .png, .gif, .jpg, .jpeg file are accepted, Thanks !";
exit;
}
// Folder blog + id of the new article
$uploadDir = '../../site/images/nieuws/'.$id.'/';
// Generate random name
$randName = md5(rand() * time());
// Creation of path
$filePath = $uploadDir . $fileName;
$newfilename = $fileName;
// UPLOAD IMAGE
// If something wrong.... we stop ! or we upload.
$result = move_uploaded_file($tmpName, $filePath);
if (!$result) {
echo "Error during upload... Please read the help doc.";
exit;
}
}
// Update query
$update = mysql_query("UPDATE $table_b SET
titel='$title',
beschrijving_klein='$bigline',
beschrijving='$text',
door='$author',
foto='$newfilename',
ID_nieuwscategorie='$categorie',
seo_url='$seo_url',
keywords='$keywords',
description='$description'
WHERE ID='$id'");
// Verif
if(!$update) echo alert("Error during update...");
// Redirect
header("location:zone.php?action=Update_news");
?>
include('verify.php');
// datas
$id = $_POST['id'];
$title = $_POST['title'];
$text = $_POST['text'];
$bigline = $_POST['bigline'];
$categorie = $_POST['categorie'];
$author = $_POST['author'];
$seo_url = $_POST['seo_url'];
$keywords = $_POST['keywords'];
$description = $_POST['description'];
$call = @mysql_fetch_array(mysql_query("SELECT * FROM $table_b WHERE ID='$id'"));
// Call for the name of categorie
$queryd = "SELECT * FROM $table_d WHERE ID=$categorie";
$resultd = mysql_query($queryd);
$mycat = @mysql_fetch_object($resultd);
$categorie_name = $mycat->naam_categorie;
if(empty($_FILES['preview']['name'])) { $newfilename = $call['preview']; }
else {
// Image file data
$fileName = $_FILES['preview']['name'];
$tmpName = $_FILES['preview']['tmp_name'];
// Extension allowed
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
// Check extension
$extension = strrchr($_FILES['preview']['name'], '.');
//Test it...
if(!in_array($extension, $extensions)) //if extension is not in the array... ALERT!!
{
print "Only .png, .gif, .jpg, .jpeg file are accepted, Thanks !";
exit;
}
// Folder blog + id of the new article
$uploadDir = '../../site/images/nieuws/'.$id.'/';
// Generate random name
$randName = md5(rand() * time());
// Creation of path
$filePath = $uploadDir . $fileName;
$newfilename = $fileName;
// UPLOAD IMAGE
// If something wrong.... we stop ! or we upload.
$result = move_uploaded_file($tmpName, $filePath);
if (!$result) {
echo "Error during upload... Please read the help doc.";
exit;
}
}
// Update query
$update = mysql_query("UPDATE $table_b SET
titel='$title',
beschrijving_klein='$bigline',
beschrijving='$text',
door='$author',
foto='$newfilename',
ID_nieuwscategorie='$categorie',
seo_url='$seo_url',
keywords='$keywords',
description='$description'
WHERE ID='$id'");
// Verif
if(!$update) echo alert("Error during update...");
// Redirect
header("location:zone.php?action=Update_news");
?>
Gewijzigd op 22/12/2012 21:59:48 door Mohammed el-faquir
Je onderdrukt met @ de eventuele foutmeldingen. Waarom?
Geen * maar benoem het veld/de velden die je wilt opvragen.
Variabelen buiten quotes.
Je script is (mogelijk) onbeveiligd door het gebruik van $id.
Je mist foutafhandeling van je query's.
Bekijk je script-opbouw eens logisch. Waar wordt de query uitgevoerd die gegevens aanpast?
Echo die eens naar het scherm.
Je geeft nergens in die query aan dat het veld met de fotonaam alleen gewijzigd moet worden als er een nieuwe foto wordt geupload. Als er geen waarde is, zal er dus niets in de database worden weg gezet.