[php] Het blabla?blaat= probleem verhelpen

Pagina: 1
Acties:

  • AcXeller
  • Registratie: Mei 2002
  • Niet online
Sorry modjes maar ik kan het niet anders noemen. Heb ook al op php.net gezocht en hier in de search maar kan niets vinden (zoals ik het dan doe ;) ) over het volgende probleem. Met de nieuwste versie is register_globals standaard uit, ik heb nu 1.4.1 of zo maar heb em ook vast uitgezet. Ik kan alle variablen van de sessions, post etc wel uitlezen maar ik zit nu met een probleem.

Ik heb een user systeempje dat alle users laat zien in een tabel met per user een edit en een delete icoontje. Achter dat icoontje zat dan een link als "deluser.php?user=wim" en die user was dan natuurlijk gebruiker afhankelijk. Met de register_global=off lukt dit natuurlijk niet meer. Zoals verteld lukt het me wel om de vars uit de session te halen of van een ingevulde form maar ik weet dus niet hoe ik per edit/del een variable mee kan geven. Via een URL lijkt het me niet meer te lukken, dus hoe moet ik dan verder ?

Mijn YouTube kanaal


Verwijderd

doe eens voor de gein ergens in een scriptje:

print_r($_GET);

en kijk wat er allemaal voor fijne dingen in die superglobal staan

even op www.php.net/superglobals kijken zal ook wel helpen evt

edit:

hee wat brak. ik klik zelf ff op de bovenstaande link en daar kom ik op een pagina op www.php.net met searchresults van superglobals, en dan staat er heel doorleuk gathering.tweakers.net voor elke link op die pagina. Lijkt wel of ze je referrer gebruiken bij het genereren van de url. hoe brak...

  • AcXeller
  • Registratie: Mei 2002
  • Niet online
Op die manier krijg ik het gelukkig wel aan het werk ja, maar dan zit je wel weer met het feit dat je vars via de url worden doorgegeven terwijl dat juist de meest beveiligde gegevens moeten zijn (ok, zit dan al in een session maar toch).

Met die search zie ik ook gathering etc etc. erg vaag ja

Mochten er nog mensen met ideeen zijn dan hoor ik het graag, ga ik even verder in de link boven neuzen.

Mijn YouTube kanaal


Verwijderd

<form method=post name=bla><input type=hidden action=delete><input type=hidden name=wim></form><a href="#" onClick="document.forms.bla.submit();return false;">delete</a>

in php action en name opvragen met $_POST['action'] en $_POST['name]
is dat dan wat je bedoelt?

Bij een edit mag de naam best in de url staan lijkt me, je krijg dat neem ik aan alleen nog maar een form in beeld waar je properties kunt wijzigen. Die properties moet je dan natuurlijk wel gaan posten...


laat ik het anders brengen. er verandert helemaal niks aan hoe je gegevens kunt geven aan je serversite script. je kunt nog steeds posten en getten. het enige verschil is dat je niet direct bij die vast kunt, dus dat je gebruik moet maken van de superglobals.

  • AcXeller
  • Registratie: Mei 2002
  • Niet online
Denk dat ik met die form code idd wel wat verder zou moeten komen. En ik kan idd wel een aantal vars in de url zetten omdat ze niet heel erg belangrijk zijn maar ik wil als het kan dus eigenlijk niets meer via de url laten lopen. Ben nu namelijk met een intranet bezig en wil het dit keer ook goed aanpakken en niet het "ach, dat doet het zo ook wel" methode gebruiken. Helemaal omdat ik over een tijdje de boel ook open ga zetten zodat ik er van buiten op kan komen (wees gerust komt nog wel een firewall tussen maar wil zoveel mogelijk afsluiten zowel in firewall als in de code).

Iig bedankt voor de hulp, moet nu wel weer verder komen.

Mijn YouTube kanaal


  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
Verwijderd schreef op 26 september 2002 @ 22:43:
<form method=post name=bla><input type=hidden action=delete><input type=hidden name=wim></form><a href="#" onClick="document.forms.bla.submit();return false;">delete</a>
dit gaat niet zo hoor: <input type=hidden action=delete>

als je dat wilt moet je dat zo doen: <input type=hidden name=action value=delete>

en ook zul je wim niet kunnen opvragen omdat win geen waarde bevat

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • AcXeller
  • Registratie: Mei 2002
  • Niet online
zaten idd een paar dingen die niet klopten maar het ging mij ook voornamelijk om de denk/werkwijze. Ik heb het nu met de volgende code opgelost voor de mensen die het willen weten.

PHP:
1
2
3
4
echo "<TD ALIGN=\"center\"><form method=\"post\" action=\"deluser.php\" name=\"delete$counter\">" ;
echo "<input type=\"hidden\" name=\"user\" value=\"$user\"></form>" ;
echo "[img]\"./images/del.gif\"[/img]</TD></TR>\n" ;
$counter++ ;


Deze code staat dus in een while lus met de mysql data

Mijn YouTube kanaal


Verwijderd

Ik heb laatst zoiets gebruikt:
PHP:
1
2
extract($_GET);
extract($_POST);

  • djack
  • Registratie: September 2002
  • Laatst online: 11-11-2024
Dus al ik het goed begrijp:
print ge nen lijst uit met zo iets gelijk dit
PHP:
if ( $action =list) {
print da ier
user email edit
wim z@z.z <a href=$PHPSELF'?action=edit&user=wim'> Edit User</a>
}
if ($action =="edit" && $user !=""){
print edit screen
}

of zo iets in slag

Because Great minds Think alike


  • AcXeller
  • Registratie: Mei 2002
  • Niet online
Iets wat er op lijkt ja ;)

Maar in plaats van die <A HREF.....> heb ik het nu via de <FORM> code lopen omdat je anders weer de vars via de url laat lopen.

Mijn YouTube kanaal

Pagina: 1