Error wegschrijven in database
Hallo,
Ik ben bezig om de url van een afbeelding op te slaan in een database. Ik heb een script van internet gehaald om de afbeelding te uploaden naar een map. Dit werkt prima. Ik krijg ook geen melding dat er een fout in de INSERT INTO zit.
Onderstaan is mijn script:
En iets verder staat het formulier:
Wanneer ik de pagina laad, krijg ik echter wel 4 meldingen meldingen:
Wanner ik het script dus uitvoer, staat er in de kolom genaamd 'foto' een 0 (nul). Dit zou de naam van de afbeelding moeten zijn.
Ik ben bezig om de url van een afbeelding op te slaan in een database. Ik heb een script van internet gehaald om de afbeelding te uploaden naar een map. Dit werkt prima. Ik krijg ook geen melding dat er een fout in de INSERT INTO zit.
Onderstaan is mijn script:
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
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
<?php
$target = "upload/";
$target = $target . basename( $_FILES['uploaded']['name']) ;
$ok=1;
//This is our size condition
if ($uploaded_size > 350000)
{
echo "<p style='color:red'>Het opgegeven bestand is te groot.</p><br>";
$ok=0;
}
//This is our limit file type condition
if ($uploaded_type =="text/php")
{
echo "<p style='color:red'><strong>.php</strong> bestanden zijn niet toegestaan.</p><br>";
$ok=0;
}
//Here we check that $ok was not set to 0 by an error
if ($ok==0)
{
echo "<p style='color:red'>Sorry, maar het bestand is niet geüpload.</p>";
}
//If everything is ok we try to upload it
else
{
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
{
echo "<p style='color:green'>Het bestand ". basename( $_FILES['uploadedfile']['name']). " is succesvol geüpload naar de server</p>";
$insertsql = sprintf("INSERT INTO machine (foto) VALUES ('$_POST[uploaded]')");
}
else
{
echo "<p style='color:red'Sorry, maar er was een probleem met het uploaden van het bestand.</p>";
}
}
?>
$target = "upload/";
$target = $target . basename( $_FILES['uploaded']['name']) ;
$ok=1;
//This is our size condition
if ($uploaded_size > 350000)
{
echo "<p style='color:red'>Het opgegeven bestand is te groot.</p><br>";
$ok=0;
}
//This is our limit file type condition
if ($uploaded_type =="text/php")
{
echo "<p style='color:red'><strong>.php</strong> bestanden zijn niet toegestaan.</p><br>";
$ok=0;
}
//Here we check that $ok was not set to 0 by an error
if ($ok==0)
{
echo "<p style='color:red'>Sorry, maar het bestand is niet geüpload.</p>";
}
//If everything is ok we try to upload it
else
{
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
{
echo "<p style='color:green'>Het bestand ". basename( $_FILES['uploadedfile']['name']). " is succesvol geüpload naar de server</p>";
$insertsql = sprintf("INSERT INTO machine (foto) VALUES ('$_POST[uploaded]')");
}
else
{
echo "<p style='color:red'Sorry, maar er was een probleem met het uploaden van het bestand.</p>";
}
}
?>
En iets verder staat het formulier:
Code (php)
1
2
3
4
5
2
3
4
5
<form enctype="multipart/form-data" action="upload.php" method="POST">
<label for="uploaded">Kies een afbeelding</label><br />
<input name="uploaded" type="file" /><br /><br />
<input type="submit" value="Upload" />
</form>
<label for="uploaded">Kies een afbeelding</label><br />
<input name="uploaded" type="file" /><br /><br />
<input type="submit" value="Upload" />
</form>
Wanneer ik de pagina laad, krijg ik echter wel 4 meldingen meldingen:
Wanner ik het script dus uitvoer, staat er in de kolom genaamd 'foto' een 0 (nul). Dit zou de naam van de afbeelding moeten zijn.
De foutmelding betekent dat een variabele niet bestaat. Logisch, want die is pas beschikbaar _nadat_ het formulier is verzonden....
Je hebt de verwerking van het formulier bovenaan in het script staan. Op zich goed, maar dan moet wel gekeken worden of het formulier verzonden is. Als het formulier verzonden is, dan verwerken en anders formulier tonen.
Je hebt de verwerking van het formulier bovenaan in het script staan. Op zich goed, maar dan moet wel gekeken worden of het formulier verzonden is. Als het formulier verzonden is, dan verwerken en anders formulier tonen.
De Notice's zijn op zich niet zo erg, de eninge die het formulier te zien krijgt ben ik.
Dus wanneer dat er gecontroleerd wordt of het formulier verzonden is, zou ik ook de link in de database moeten zien? in dit geval dus bv. 'hoi.png' ?
Toevoeging op 30/03/2012 22:21:13:
Iemand die het weet?
Dus wanneer dat er gecontroleerd wordt of het formulier verzonden is, zou ik ook de link in de database moeten zien? in dit geval dus bv. 'hoi.png' ?
Toevoeging op 30/03/2012 22:21:13:
Iemand die het weet?
Niet na een paar uur al gaan lopen bumpen aub.
Is dit een andere vraag of vergelijkbaar met http://www.phphulp.nl/php/forum/topic/kolom-geeft-0-aan/83729/
Is dit een andere vraag of vergelijkbaar met http://www.phphulp.nl/php/forum/topic/kolom-geeft-0-aan/83729/
Dit omdat het topic was verdwenen uit het lijstje met laatste forum berichten en omdat ik er eigenlijk tog wel graag een antwoord op heb.
Je opent dus een nieuw topic over hetzelfde omdat je topic niet meer zichtbaar was bij de laatste berichten?!???
Na (minimaal) 24 uur kun je bumpen om je topic weer in het lijstje te krijgen.
En als ik naar je vragen kijk: lees eens een basistut door en/of topics op bv dit forum.
Na (minimaal) 24 uur kun je bumpen om je topic weer in het lijstje te krijgen.
En als ik naar je vragen kijk: lees eens een basistut door en/of topics op bv dit forum.




