/ 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
Inkludering af kodestump i større kodekomp~
Fra : J Christensen


Dato : 12-01-06 18:54

Jeg har forskellige steder i et skript nogle små stumper kode, som kan
bruges andre steder.

Jeg har med stort held brugt funktioner til design, men det er jo ren
html, der echo'es.

Nu har jeg fx dette

EKSEMPEL
if ($betalt == "ja") {
echo "<td style='color: green' NOWRAP>";
echo $betalt;
}
else {
echo "<td style='color: red' NOWRAP>";
echo $betalt;
}
EKSEMPEL SLUT

Hvordan får jeg det skrevet ind i resten af koden (som er en tabel,
der kører data ud fra en database)?

Jeg har prøvet med en funktion og med include og med "print <<<", men
enten sker der ingenting (evt. en fejlmelding , eller også skrives
der en masse "echo", hvilket jeg sådan set godt kan forstå, jeg kan
bare ikke "forstå", hvad jeg så skal gøre - jeg tror, jeg har
prøvet "alt", sikkert til sidst på een gang, og så går det jo
galt.....

Mvh.
Janni Christensen


 
 
Bertel Lund Hansen (12-01-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 12-01-06 23:19

J Christensen skrev:

> Jeg har med stort held brugt funktioner til design, men det er jo ren
> html, der echo'es.

Det gør ikke noget.

> Nu har jeg fx dette

> EKSEMPEL
> if ($betalt == "ja") {
> echo "<td style='color: green' NOWRAP>";
> echo $betalt;
> }
> else {
> echo "<td style='color: red' NOWRAP>";
> echo $betalt;
> }
> EKSEMPEL SLUT

> Hvordan får jeg det skrevet ind i resten af koden (som er en
> tabel, der kører data ud fra en database)?

<?
   function er_betalt ($betalt) {
      $colour='green';
       if ($betalt != 'ja') $colour='red';
      return "<td style='color:$colour' nowrap>$betalt</td>";
   }

// Andetsteds i koden:

   echo "<tr><td>En masse pladder</td>er_betalt('nej')<td>Mere pladder</td>";
?>

I stedet for 'nej' kan der stå en variabel.

PS. Det er ved at være standard at alt HTML og CSS skrives med småt.

PPS. Version 3 er den rigtige (forhåbentlig).

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Nygaard (13-01-2006)
Kommentar
Fra : Nygaard


Dato : 13-01-06 09:57

> // Andetsteds i koden:
>
> echo "<tr><td>En masse pladder</td>er_betalt('nej')<td>Mere pladder</td>";
> ?>
>
Det er så vist ikke helt korrekt HTML at have tekst stående udenfor en <td>
i en tabel
- men det er selvfølgelig en helt anden sag...

/Nygaard



Bertel Lund Hansen (13-01-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 13-01-06 09:09

Nygaard skrev:

>> echo "<tr><td>En masse pladder</td>er_betalt('nej')<td>Mere pladder</td>";
>> ?>

> Det er så vist ikke helt korrekt HTML at have tekst stående udenfor en <td>
> i en tabel

Rigtigt.

> - men det er selvfølgelig en helt anden sag...

Hvis du kikker på funktionen, vil du se at den sørger for de
nødvendige tags. Man kan ikke flytte disse tags fordi man så ikke
kan styre farven i funktionen.

Alternativet er at fjerne funktionen og lave undersøgelsen i
'selve koden', men så bliver det mindre uoverskueligt, og måske
kan funktionen genbruges.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Nygaard (13-01-2006)
Kommentar
Fra : Nygaard


Dato : 13-01-06 10:50

> Hvis du kikker på funktionen, vil du se at den sørger for de
> nødvendige tags. Man kan ikke flytte disse tags fordi man så ikke
> kan styre farven i funktionen.
Argh, crap... Så kan jeg lære at læse det hele


> Alternativet er at fjerne funktionen og lave undersøgelsen i
> 'selve koden', men så bliver det mindre uoverskueligt, og måske
> kan funktionen genbruges.
>
Og det er måske lidt overkill at lave en phpfunktion for at omsætte et ja
til grøn og nej til rød. Man kunne jo evt lave et array til at holde styr på
disse farver.
ArrayName['ja']="green";
ArrayName['nej']="red";

/Nygaard



J Christensen (17-01-2006)
Kommentar
Fra : J Christensen


Dato : 17-01-06 20:03

Bertel Lund Hansen skrev:

>
> PS. Det er ved at være standard at alt HTML og CSS skrives med småt.
>
> --
> Bertel
> http://bertel.lundhansen.dk/      http://fiduso.dk/

Tak for kodeeksemplet, som virker (med variablen), og hvis princip er
genbrugt.

Jeg vil dog gerne vide, om det ikke er muligt "bare" at få nogle
linjer (kode)tekst indskrevet i (kode)sammenhæng uden at lave en
funktion ud af det, en slags include? Sommetider føles det som lidt
meget at lave en funktion for så lidt - men det er sikkert, fordi jeg
skal tænke så vældigt meget over det med selvstændige funktioner


Hvad angår stort og småt ved HTML og CSS, skyldes min blanding mest,
at jeg startede mit projekt i Stones Webwriter, hvor programmet var sat
til at skrive med stort, og nu kører jeg med et program, der gerne vil
skrive med småt, så jeg skal lige have ryddet op engang.

Mvh.
Janni Christensen


Bertel Lund Hansen (18-01-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-01-06 12:17

J Christensen skrev:

> Jeg vil dog gerne vide, om det ikke er muligt "bare" at få nogle
> linjer (kode)tekst indskrevet i (kode)sammenhæng uden at lave en
> funktion ud af det, en slags include?

Jo, det kan det godt:

Metode I:

echo "<tr><td>En masse pladder</td>";
if ($betalt == "ja")
echo "<td style='color: green' NOWRAP>$betalt</td>";
else
echo "<td style='color: red' NOWRAP>$betalt</td>";
echo "<td>Mere pladder</td>";


Metode II:

if ($betalt == "ja") $farve='green';
else $farve='red';

echo "<tr><td>En masse pladder</td>";
echo "<td style='color: $farve' NOWRAP>$betalt</td>";
echo "<td>Mere pladder</td>";

> Hvad angår stort og småt ved HTML og CSS, skyldes min blanding mest,
> at jeg startede mit projekt i Stones Webwriter, hvor programmet var sat
> til at skrive med stort, og nu kører jeg med et program, der gerne vil
> skrive med småt, så jeg skal lige have ryddet op engang.

Webwriter har en funktion der kan lave små bogstaver på
HTML-koderne.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

J Christensen (18-01-2006)
Kommentar
Fra : J Christensen


Dato : 18-01-06 15:18

Bertel Lund Hansen skrev:

> J Christensen skrev:
>
> > Jeg vil dog gerne vide, om det ikke er muligt "bare" at få nogle
> > linjer (kode)tekst indskrevet i (kode)sammenhæng uden at lave en
> > funktion ud af det, en slags include?
>
> Jo, det kan det godt:
>
> Metode I:
>
> echo "<tr><td>En masse pladder</td>";
> if ($betalt == "ja")
> echo "<td style='color: green' NOWRAP>$betalt</td>";
> else
> echo "<td style='color: red' NOWRAP>$betalt</td>";
> echo "<td>Mere pladder</td>";
>
>
> Metode II:
>
> if ($betalt == "ja") $farve='green';
> else $farve='red';
>
> echo "<tr><td>En masse pladder</td>";
> echo "<td style='color: $farve' NOWRAP>$betalt</td>";
> echo "<td>Mere pladder</td>";
>

Det var nu ikke helt det, jeg mente - spørgsmålet går på, om jeg
kan genbruge fx ovennævnte 5 linier ved at kalde dem på en eller
anden måde - jeg prøvede på et tidspunkt med en include af sådanne
linier, der skulle udskrives ved hjælp af "print <<< TEKST" midt i den
øvrige kode. Ja, jeg prøvede også uden "print", men lige lidt hjalp
det......

Jeg er i den situation, at jeg har en del if'er, der kunne genbruges,
men udkommet af ifferiet er ikke det samme, så jeg kan ikke lave hele
funktioner - derfor ville jeg gerne nøjes med at kunne smide 40 linier
rå if-tekst ind, som så bare indgår i resten af koden.

Hvis jeg laver en funktion bare med if-delen, så har den jo ingen
funktion, og der kommer ingenting ud af det.

Nå, jeg kommer vel til at fatte php på et tidspunkt - det glædede
mig usigeligt ved en google-søgning fornylig at finde nogle indlæg,
der viste, at selv du, Bertel, havde været begynder engang

>
> Webwriter har en funktion der kan lave små bogstaver på
> HTML-koderne.
>
Det ved jeg godt, men hvis jeg åbner mine nuværende dokumenter i
Stones og kører den funktion, går æ, ø og å i ged, når jeg igen
åbner dokumentet i min php-editor (HAPedit), og det kan ikke ændres
(som i Stones), hvorimod HAPedit gladeligt accepterer samme bogstaver,
hvis de bliver skrevet i selve denne editor. Så jeg har prioriteret
mine danske bogstaver og forsøger at tage koden hen ad vejen. Når jeg
husker det.

Mvh.
Janni Christensen


Bertel Lund Hansen (18-01-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-01-06 19:56

J Christensen skrev:

> Det var nu ikke helt det, jeg mente - spørgsmålet går på, om jeg
> kan genbruge fx ovennævnte 5 linier ved at kalde dem på en eller
> anden måde

Det er jo bl.a. det funktioner er beregnet til.

> - jeg prøvede på et tidspunkt med en include af sådanne linier

Det kan man også godt, men jeg er ikke sikker på om det dur til
det du vil lave.

> Jeg er i den situation, at jeg har en del if'er, der kunne
> genbruges, men udkommet af ifferiet er ikke det samme, så jeg
> kan ikke lave hele funktioner

Det forstår jeg slet ikke. Funktioner er mere fleksible end
include og 'direkte kode'.

> Hvis jeg laver en funktion bare med if-delen, så har den jo ingen
> funktion, og der kommer ingenting ud af det.

Du kan få en variable tilbage der f.eks. angiver den farve der
skal skrives med.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

J Christensen (18-01-2006)
Kommentar
Fra : J Christensen


Dato : 18-01-06 21:06

Bertel Lund Hansen skrev:

> > Jeg er i den situation, at jeg har en del if'er, der kunne
> > genbruges, men udkommet af ifferiet er ikke det samme, så jeg
> > kan ikke lave hele funktioner
>
> Det forstår jeg slet ikke. Funktioner er mere fleksible end
> include og 'direkte kode'.
>

Jeg har en formular, hvor jeg kører en bunke if'er for at validere
brugerens input.

Jeg har også et administratormodul, hvor en anden person kan
rette/tilføje info i samme felter, men også en et antal felter til
administration, fx det omtalte betalt-felt.

Så var det, jeg syntes, det kunne være hyggeligt at kunne genbruge de
fælles if'er, som jo altså ikke har fælles slutresultat (brugerne
sender en tilmelding, administrator laver rettelser).

Men skidt med det - jeg er lykkeligvis efterhånden kommet til
nice-to-have i stedet for need-to-have

Mvh.
Janni Christensen


Bertel Lund Hansen (18-01-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-01-06 22:18

J Christensen skrev:

> Så var det, jeg syntes, det kunne være hyggeligt at kunne genbruge de
> fælles if'er, som jo altså ikke har fælles slutresultat (brugerne
> sender en tilmelding, administrator laver rettelser).

Jeg kan ikke hjælpe dig bedre uden kendskab til den præcise kode.

> Men skidt med det - jeg er lykkeligvis efterhånden kommet til
> nice-to-have i stedet for need-to-have

På lang sigt er du 'nødt' til at lære funktioner at kende. Det
her er måske et godt sted at begynde?

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste