/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hjælp til function!
Fra : Jakob Jensen


Dato : 19-08-02 18:50

Jeg har valgt at holde alle sql strenge og udtræk i functioner i
en ekstern fil, hvilket (efter min mening), er en nem måde, at
genbruge sin sql strenge på. Men jeg har nogle ting, som jeg godt
kunne bruge lidt hjælp til.

Jeg har en getRow( $table, $fnm, $fval ) function, som henter
linier ud fra databsen, hvor $fnm = $fval. Mit først problem er:
Hvis nu jeg skal hente en linie, hvor to ting er li med hinanden,
kan jeg så skrive $fnm = en, to og $fval = $en, $to eller skal
jeg lave en seperat mysql_query for at hente data, hvor det er
mere end en ting som skal passe. Eller findes der andre måder,
som jeg kan bruge i min getRow().

Mit næste problem er, at jeg har en while løkke, hvor jeg skal
hente flere data ud, og jeg vil helst være fri for, at printe
(echo "";) dem ud i functionen, som jeg gør nu (while løkken
bruges til at printe en dropdown box):

function getStatus()
{
global $link;
$result = mysql_query( "SELECT id, name FROM user_status",
$link );

if ( ! $result ) {
die ( "getRow fatal fejl: ".mysql_error() );
} else {
while ( $row = mysql_fetch_array( $result ) ) {
extract( $row );
echo( "<option value = \"$id\">$name</option>" );
}
}
}

----
Jeg håber nogen forstod det jeg skrev og kan hjælpe mig ldit.

Venlig hilsen
Jakob Jensen

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jesper & Pernille (19-08-2002)
Kommentar
Fra : Jesper & Pernille


Dato : 19-08-02 20:45

Jakob Jensen wrote:
> Jeg har valgt at holde alle sql strenge og udtræk i functioner i
> en ekstern fil, hvilket (efter min mening), er en nem måde, at
> genbruge sin sql strenge på. Men jeg har nogle ting, som jeg godt
> kunne bruge lidt hjælp til.

> Jeg har en getRow( $table, $fnm, $fval ) function, som henter
> linier ud fra databsen, hvor $fnm = $fval. Mit først problem er:
> Hvis nu jeg skal hente en linie, hvor to ting er li med hinanden,
> kan jeg så skrive $fnm = en, to og $fval = $en, $to eller skal
> jeg lave en seperat mysql_query for at hente data, hvor det er
> mere end en ting som skal passe. Eller findes der andre måder,
> som jeg kan bruge i min getRow().

Jeg kan ikke rigtigt forstå hvad din function gør (sikkert fordi jeg
bedst kan lide at nøjes med at connecte med en ekstern/"importeret"
fct., så jeg kender ikke lige en parallel). Du kan altid lave en query
der hedder "select ID, Name, BirthYear from Children where Name =
"Johan" and BirthYear = 1982" - og som derved understøtter to
betingelser - men jeg ved ikke om din function understøtter det.

> Mit næste problem er, at jeg har en while løkke, hvor jeg skal
> hente flere data ud, og jeg vil helst være fri for, at printe
> (echo "";) dem ud i functionen, som jeg gør nu (while løkken
> bruges til at printe en dropdown box):

Så skal du tilføje dem til en variabel som du returnerer i stedet:
$ReturData = ''; #initialisérer så vi undgår warnings om unset variable

while($raekke = mysql_fetch_assoc($query)){
$ReturData .= $raekke['Name']; # det er ".=" der er 'sjov'
   # - den sætter i enden af den eksisterende streng.
}

Return $ReturData;

> function getStatus()
> {
> global $link;
> $result = mysql_query( "SELECT id, name FROM user_status",
> $link );
>
> if ( ! $result ) {
> die ( "getRow fatal fejl: ".mysql_error() );
> } else {
> while ( $row = mysql_fetch_array( $result ) ) {
> extract( $row );
> echo( "<option value = \"$id\">$name</option>" );
> }
> }
> }
>
> ----
> Jeg håber nogen forstod det jeg skrev og kan hjælpe mig ldit.

Jeg håber at jeg forstod lidt og hjalp tilsvarende

venligst

Jesper Brunholm


Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste