[HTML/PHP/SQL] form werkt niet meer

Pagina: 1
Acties:
  • 40 views sinds 30-01-2008

  • borgdaville
  • Registratie: December 2000
  • Laatst online: 07:22
Ik wil een PHP van ons kwaliteitsysteem verplaatsen naar een nieuwe up-to-date server. En een heleboel werkt niet meer. Veel heb ik met search/google al opgelost echter ik zit nu al een tijdje naar een stukje code te staren en kan maar niet ontdekken wat er fout gaat. Krijg ook geen foutmeldingen.

Oorzaak:
Ik ben geen goede PHP programmeur, begin er net mee, ik heb deze site snel snel inelkaar gezet. Moet nog helemaal opnieuw geschreven worden als ik wat meer ervaring/tijd heb. Het is dus allemaal slordig inelkaar gezet maar het werkt.

De code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
    echo "<form method=\"post\" action=\"permedewerker.php?rollen=" . $rollen . "\">";
?>
<b>Selekteer een Rol of Functie:</b><select name="rollen">
<option value="">Alles weergeven
<?php
    //alles selecteren met SQL
    $SQL_statement = "SELECT * FROM rollen";
    //SQL uitvoeren en resultaat in $resultset
    $resultset = mysql_query($SQL_statement, $db) or die (__LINE__."  ".mysql_error());
    while($data = mysql_fetch_array($resultset)) {
        echo "<option value=\"" . $data['id'] . "\">" . $data['rol'];
    }
?>
</select><input type="submit" value="Weergeven!"></form>


Probleem:
Er wordt geen waarde met "permedewerker.php?rollen=" meegegeven. Op mijn oude server werkt het gewoon prima. Formuliertje wordt wel helemaal prima weergegeven.

[ Voor 19% gewijzigd door borgdaville op 02-12-2005 13:45 . Reden: te snel op versturen geklikt! ]

Familieman, nerd, mooi weer fietser, buitenmens en levensgenieter...


Verwijderd

Eerste was ik zie is dat je je options niet afsluit...

Denk dat dat de oplossing is. Zo nee, dan is het even handig om te vertellen WAT er fout gaat :). leuke edit :)

Ik gok iets met register_globals... Doe eens $_REQUEST['rollen'] ipv $rollen.

[ Voor 75% gewijzigd door Verwijderd op 02-12-2005 13:50 ]


  • borgdaville
  • Registratie: December 2000
  • Laatst online: 07:22
Verwijderd schreef op vrijdag 02 december 2005 @ 13:44:
Eerste was ik zie is dat je je options niet afsluit...

Denk dat dat de oplossing is. Zo nee, dan is het even handig om te vertellen WAT er fout gaat :).
ik had wat snel op versturen geklikt terwijl ik "bekijken" bedoelde. Inmiddels de </option> toegevoegd, maar geen verschil :(

Familieman, nerd, mooi weer fietser, buitenmens en levensgenieter...


Verwijderd

borgdaville schreef op vrijdag 02 december 2005 @ 13:49:
[...]

ik had wat snel op versturen geklikt terwijl ik "bekijken" bedoelde. Inmiddels de </option> toegevoegd, maar geen verschil :(
Zie de edit. Je bent wss op een andere server overgestapt waar register_globals uitstaat, waardoor je bij get- of post-parameters dit expliciet moet opvragen.

  • borgdaville
  • Registratie: December 2000
  • Laatst online: 07:22
Verwijderd schreef op vrijdag 02 december 2005 @ 13:51:
[...]

Zie de edit. Je bent wss op een andere server overgestapt waar register_globals uitstaat, waardoor je bij get- of post-parameters dit expliciet moet opvragen.
klinkt logisch, staat iets in php.ini over dat het een bug dat het mogelijk was in de oudere versie 8)7 ! Kan dat?

Hoe doe ik het nu goed? Sorry misschien erge n00b vraag, maar dat ben ik ook.

Familieman, nerd, mooi weer fietser, buitenmens en levensgenieter...


Verwijderd

borgdaville schreef op vrijdag 02 december 2005 @ 13:55:
[...]

klinkt logisch, staat iets in php.ini over dat. Tis een bug dat het mogelijk was in de oudere versie 8)7 ! Kan dat?

Hoe doe ik het nu goed? Sorry misschien erge n00b vraag, maar dat ben ik ook.
Dat is geen bug. Vanaf php 4 AFAIK staat het standaard uit. Je kunt het beter uit laten staan i.v.m. beveiliging, anders kan iedereen al je variabelen veranderen.

Zet het dus uit. Al de variabelen die je uit de get- of post-variabelen haalt (bijv. als je hebt index.php?item=10), haal je op m.b.v. $_REQUEST, in dit geval $_REQUEST['item']

Als register_globals aan staat, kun je het direct doen met $item, maar dat is niet netjes programmeren en niet veilig.

Dit alles was gemakkelijk te vinden via google & de search trouwens...

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Dit staat gewoon letterlijk in onze FAQ, neem die maar even door:
P&W FAQ - PHP:Mijn POST en GET forms werken niet (meer)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.