11. september 2003 - 09:35Der er
4 kommentarer og 1 løsning
kalde php function i samme script fra dropdown
Jeg har været inde på det i tidligere spg. men fik ikke rigtigt svar, er kommet lidt videre men er kommet til endnu en hurdel. Jeg har en form og en drop downbox form action er php_self varfiablen som indikere at at samme side bliver reloaded. Kan jeg på en eller anden måde kalde en bestemt php function på siden ?
Et andet problem er også at hvis jeg prøver at skrive variablen $mindrop som er navnet på drop boksen kommer der meddelse om at det er en udefineret variabel. Hvordan får jeg variablen fra html sektionen ind i et inlejret php script. her er koden.... Jeg har arbejdet lidt med det her et stykke tid nu og vil gerne videre derfor lidt ektra point til en tilfredsstillende løsningsforslag.
Mange tak for det.. So far so good. Som det er nu, virker det jeg kan bruge min variabel. Jeg har nu indsat et kald til en function getCustomerData($mindrop);
mit problem er at den bliver kaldt hver gang siden loader, den skulle jo kun kaldes når der er valgt et eller andet i dropdownboksen.
Kan man indsætte en hidden value i selectboksen som jeg på en eller anden måde kan bruge som dirty, eller bliver jeg nød til at sætte en default vær,di i select boksen som jeg så kan validere på inden externe funktioner bliver kaldt.
$mindrop = $_GET["mindrop"]; skal udføres _inden_ du sender din form til browseren.
Så skal du teste om den er udfyldt med en gyldig værdi: Hvis den er gyldig er det anden gang siden kaldes og skal du behandle værdien. Hvis den er ugyldig er det første gang og du skal sende din form til browseren.
Jeg tror det er lettere for dig at lade være med at bruge PHP_SELF. Skriv istedet et andet PHP script der indeholder $mindrop = $_GET["mindrop"]; og behandler inputtet.
Herunder et standalone eksempel, der viser hvordan du undgår at vise din form, hvis den allerede er udfyldt:
<html> <body>
<h1> Welcome to support recordtrack system</h1> <?php $mindrop = $_GET["mindrop"]; if ($mindrop) { getCustomerData($mindrop); } else { // Formularen vises kun hvis der ikke er valgt et felt. ?>
<?php function getCustomerData($md) { echo "<p>You typed $md\n<br>So this must be second time the script is called</p>"; } ?>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.