per-vMedlem sedan maj 200165 inlägg
Hej Pojkar och flickor...
Nu så börjar bli klar med mitt första PHP script någonsin ( :) ), det är en liten "todo" lista som en lirare behövde här på jobbet.
Ni får gärna gå in på
http://www.askfat.net/todo/index.php?namn=webforum
och kolla läget.
All kritik är välkommen... dålig eller bra, vilket som.
Tänk på att jag är riktig nybörjare.. he he.
Säkerheten är typ = 0 så ni behöver inte hacka sönder allt ;)
so long.
------------------
per.
PMedlem sedan jan. 20012 107 inlägg
Jag skulle föredra att ha datumet i ett annat format.. 2001-01-01 eller något...
Får man fråga hur du gör för att få varanan <td> i olika färger? Får inte mitt att funka och vilket teckensnitt det är på bilderna?
En solklar vinnare :e
------------------
"Man kommer fortare fram till målet om man kryper åt rätt håll än springer åt fel håll"
jepsOMedlem sedan mars 2001423 inlägg
Får man fråga hur du gör för att få varanan <td> i olika färger?
Tar mig friheten att svara på frågan ;)
När du loopar fram raderna kan du lägga med en variabel som ökar med 1 för varje rad. Sen nåt i den här stilen:
if ($variabel/2 = round($variabel/2)):
$color = "black";
else:
$color = "white";
endif;
<td bgcolor="<? echo($color); ?>">
Koden kan vara fel, men principen är som följer: Du kontrollerar om radnumret är ett udda eller ett jämnt tal. Udda rader får en färg och jämna en annan.
Btw, snyggt jobbat med sidan :e
------------------
/ jeps0
[Redigerat av jepsO den 29 maj 2001]
PMedlem sedan jan. 20012 107 inlägg
Tack... precis vad jag var ute efter :e
per-v får gärna säga vilket teckensnitt det är på bilderna...
------------------
"Man kommer fortare fram till målet om man kryper åt rätt håll än springer åt fel håll"
per-vMedlem sedan maj 200165 inlägg
Hallå..
Tack för kritiken!
P,
$bgColor = (++$i & 1) ? '#FFFFFF' : '#EEEEEE';
echo "<tr bgcolor=\"$bgColor\">";
"Small fonts" heter typsnittet jag använt mig av på knapparna, det följde med i Win2000.
so long
------------------
per.
RyzzenMedlem sedan mars 2000279 inlägg
Vore det inte bättre om mam efter att man ändrat på ett inlägg kom direkt till antecknings listan.
Blir lite mycke klickande..
Vorre även bra när man skall deleta..Om det stod i popup rutan vilken anteckning det var frågan oom.
[Redigerat av Ryzzen den 30 maj 2001]
PMedlem sedan jan. 20012 107 inlägg
Vad innebär den här koden?
$bgColor = (++$i & 1) ? '#FFFFFF' : '#EEEEEE';
echo "<tr bgcolor=\"$bgColor\">";
------------------
"Man kommer fortare fram till målet om man kryper åt rätt håll än springer åt fel håll"
Web-TorMedlem sedan nov. 200011 794 inlägg
Jag tycker inte att du skall tillåta HTML.
Det fixar du med hjälp av htmlspecialchars :)
------------------
/Tor
Gör ett hembesök
KimMedlem sedan jan. 20003 571 inlägg
Bättre att du använder htmlentities() istället. :)
------------------
404 - signature not found
ChavezMedlem sedan maj 20001 297 inlägg
Vad innebär den här koden?
Det är ungefär som en if sats. Om det visar sig att uttrycket inom parentesen är sant så körs det första efter ?. Annars körs det efter :
Förresten, vad heter denna konstruktionen på svenska? Klurade på det när jag skrev om den i PHP skolan.
------------------
<A HREF="mailto:chavez@post.netlink.se">Mvh Chavez
</A> UIN: 73975020
Köp, Byt eller Sälj på Gametrade.nu!
jepsOMedlem sedan mars 2001423 inlägg
Jag är fortfarande inte riktigt med på sättet att skriva.
$bgColor = [b](++$i & 1)[/b] ? '#FFFFFF' : '#EEEEEE';
Ska det fetmarkerade föreställa en if-sats? :)
------------------
/ jeps0
PMedlem sedan jan. 20012 107 inlägg
inte jag heller...
------------------
"Man kommer fortare fram till målet om man kryper åt rätt håll än springer åt fel håll"
per-vMedlem sedan maj 200165 inlägg
Tack för tipsen pojkar, jag ska byta datum formatet, försöka ordna så att HTML inte fungerar, och kolla om man ska skicka iväg användaren direkt till noteringarna när man uppdaterat ett inlägg.
P och jepsO
<table>
<?
$fil = file("fil.txt");
while(list(,$varde) = each ($fil)){
list ($glass,$sort,$pris) = split("\|", $varde);
$bgColor = (++$i & 1) ? '#FFFFFF' : '#EEEEEE';
echo "<tr bgcolor=\"$bgColor\"><td>$glass</td><td>$sort</td><td>$pris</td></tr>";
}
?>
</table>
------------------
per.
[Redigerat av per-v den 31 maj 2001]
jepsOMedlem sedan mars 2001423 inlägg
Jojo, hur det ska implementeras förstår jag. Det är bara raden med (++$i & 1) som är oklar. Hur kan det uttrycket vara en if-sats? Vad innebär "++$i & 1"?
------------------
/ jeps0
SPiNMedlem sedan mars 20005 832 inlägg
Om du har använt dig av VB nångongång finns det en funktion som heter Iif, som först kollar ett uttryck, om det är sant returneras en true-sträng, annars en false-sträng.
Används i VB så här:
variabel = Iif(2 > 1, "Truedelen som returneras", "Falsedelen som returners")
variabeln får värdet "Trudelen som returneras", eftersom att uttrycket är sant.
(++$i & 1) ? '#FFFFFF' : '#EEEEEE'; fungerar likadant, fast det är då PHP, C, C#, Java som använder den typen...
Om uttrycket är sant returneras '#FFFFFF', annars returneras '#EEEEEE'
Hänger ni med?
------------------
SPiN, bjorne.w@telia.com
-- They pretend to pay me, I pretend to work --
jepsOMedlem sedan mars 2001423 inlägg
Det förstod jag också :e
Oklarheten ligger i hur (++$i & 1) ska kunna tolkas som en if-sats. Vad innebär "++$i", och vad efterfrågas med "& 1"? Om man skulle omforma uttrycket till en "if variabel = värde then", hur skulle den då se ut?
I mina ögon står det bara "variabeln i och 1" innanför parentesen. "++" är jag inte bekant med (enbart sysslat med ASP innan).
Ledsen om det börjar bli lite långdraget, men jag förstår verkligen inte sättet att skriva :O
------------------
/ jeps0
SPiNMedlem sedan mars 20005 832 inlägg
Ärligt talat förstår jag inte riktigt det heller... Det är knappast så att det finns någon logik i det :)
------------------
SPiN, bjorne.w@telia.com
-- They pretend to pay me, I pretend to work --
nicclasMedlem sedan feb. 20001 061 inlägg
En vanlig IF-sats ser ju ut så här
IF <test> THEN
<true result>
ELSE
<false result>
där <test> är det som skall provas tex om ett tal är udda eller ej. <test> returnerar alltid "sant" eller "falskt".
Vid sant körs <true result> och vid "falskt", <false result>
På samma sätt funkar ?:-konstruktionen
<test> ? <true result> : <false result>
I detta fall är test-operationen en operation för att avgöra om ett tal, $i, är udda eller jämnt.
(++$i & 1) innebär att först ökas $i med 1, plus-plus betyder öka med ett, &-operatorn är bitvis AND. Ett tal som är udda som AND-at med 1 returnerar "sant", ett jämnt "falskt".
(Vill man öka $i efter testet skriver man $i++.)
Jag hade nog använd "mod-operatorn" % istället:
$bgColor = (++$i % 2) ? '#FFFFFF' : '#EEEEEE';
resutlatet blir dock det samma...
/nicclas - www.nyhetsrubriker.com
[Redigerat av nicclas den 31 maj 2001]
spangoMedlem sedan juni 20006 147 inlägg
(++$i & 1)
Betyder:
Öka på $i med ett och gör sedan bitvis OCH mot värdet 1.
Bitvis OCH med 1 resulterar i noll eller ett, och dessa kan som bekant användas som logiska värden. Sen ska ju koden se ut så här för att vara ball ;) :
# Innan loopen:
$färger = array('FFFFFF', 'EEEEEE');
$varv = 0;
...
# I loopen:
echo $färger($varv++ % 2);
Ang. TODO-listan
Tycker man ska komma till listan över anteckningar när man lagt till en anteckning, isf att hamna på "lägg till ny"-sidan.
\t Asch, Nicke han före
------------------
These are the cries of the carrots, the cries of the carrots! You see, Reverend Maynard, tomorrow is harvest day and to them it is the holocaust.
[Redigerat av spango den 31 maj 2001]