[php] geeft geen fout, maar werkt ook niet!

Pagina: 1
Acties:

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
Mijn code doet het niet, maar hij geeft ook geen fout weer...

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
<?
//-----------------------------------------------------------------------
$MyDB_name = $HTTP_POST_FILES['dbfile']['name'];
$MyDB_type = $HTTP_POST_FILES['dbfile']['type'];
$MyDB_size = $HTTP_POST_FILES['dbfile']['size'];
$maximum_size = 5100000;
//-----------------------------------------------------------------------
//Check de bestandsgrootte 
function check_size($MyDB_size, $maximum_size) {
if ($MyDB_size < $maximum_size) { 
    return 0;
    }
else { 
    return 1; 
    }
}
//-----------------------------------------------------------------------
function upload_file($dbfile, $MyDB_name) {
    copy($dbfile, "../LOTUS/$MyDB_name");
    unlink($dbfile);
}
//-----------------------------------------------------------------------
if ($action == "Submit") {
    if (check_size($MyDB_size, $maximum_size) == 0) { 
        upload_file($dbfile, $MyDB_name);
        print("Het bestand [ <b>$MyDB_name</b> ] met een grootte van [ <b>$MyDB_size</b> Kb ] is geupload");
    }
    else
        print("DB mag niet groter zijn dan 5 MB!"); 
}
?>

weet iemand waar de fout juist kan liggen??????

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:34

gorgi_19

Kruimeltjes zijn weer op :9

Een wilde gok.. Je submitbutton heet "submit" in plaats van "Submit"?
Voor de rest weinig te zeggen...... Een beetje debuggen moet je wel er achter komen WAAR hij precies stopt... Wat de eerste actie is die hij nog wel uit voert.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
nee, dat is het niet..

als ik een echo voor iedere if zet, dan voert ie enkel die voor de action==submit uit,
de rest niet meer... :s

EDIT: de map LOTUS heeft 777-rechten

Verwijderd

En wat poept ie uit op het scherm? "DB mag niet groter zijn dan 5 MB!?" of "Het bestand [ <b>$MyDB_name</b> ] met een grootte van [ <b>$MyDB_size</b> Kb ] is geupload"?

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
niks, dat is het juist... ik krijg helemaal geen melding te zien

enkel mijn statusbalk zegt: "gereed"

  • Grum
  • Registratie: Juni 2001
  • Niet online
Als jij VOOR alle if's een stukje code zet wat een iets print dan zal je er:

- 1 altijd zien
- 3 zien als ie door de if( $submit == 'Submit' ) komt

En als je op [enter] drukt op je form te submitten wordt de waarde van je submit button NIET doorgegeven.

Suc6 ermee ;)

Verwijderd

iets te snel...

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
ja, ok

als ik voor de if(action==submit) een echo "iets" zet, dan krijg ik alleen deze te zien...

Verwijderd

$action is in je code nergens gedefinieerd. Waarschijnlijk POST je deze vanuit een formulier ofzo, maar dan hoor je die wel eerst netjes binnen te halen.

bijvoorbeeld:
PHP:
1
2
3
4
5
6
7
8
9
10
11
if (isset($_POST['action'])) 
   $action = $_POST['action'];
else
   $action = "blaat";

if ($action == "Submit") { 
   doeIets();
} 
else {
   doeIetsAnders(); 
}

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
in het andere formulier heb ik het volgende staan:

code:
1
2
3
4
5
6
7
<form method="post" action="upload.php" enctype="multipart/form-data" name="form" id="form">
      <center>
          <font size="2" face="Courier New, Courier, mono">Upload Database:</font> 
          <input type="file" name="dbfile">
          <input type="Submit" name="Submit" value="Submit">
      </center>
      </form>

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
Ik denk idd dat de fout ligt bi het niet doorgeven van de action...

Hoe kan ik dit probleem opvangen?
delighteddennis' methode werkt niet... hij geeft altijd een blaat terug dan

Verwijderd

Er staat in je form ook nergens een variabele met de naam action. Die zou je daar dan ook moeten toevoegen

<input type=hidden name=action value=Submit>

je kan er natuurlijk ook een GET variant van maken

<form ... .... action="script.php?action=Submit ....>

Je moet dan de $_POST wel in $_GET veranderen

[ Voor 0% gewijzigd door Verwijderd op 05-11-2002 21:36 . Reden: GET-variant vergeten ]


  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Topicstarter
Verwijderd schreef op 05 november 2002 @ 21:35:
<input type=hidden name=action value=Submit>
dat ik dat was vergeten!!! |:(
merci voor alle hulp!!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

:? :?
* drm verbaasd achterover slaat *

* drm fluistert Leve error_reporting op E_ALL
Warning: Undefined variable '$action' on line 23
:o

[ Voor 0% gewijzigd door drm op 05-11-2002 23:42 . Reden: typo ]

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1