01. juni 2008 - 22:28
Der er
20 kommentarer og 2 løsninger
Forkorte den her script kode
Hey kan man ikke forkorte den her kode så den ikke er så lang ? jeg kan forstille mig der er noget kode der ikke skal bruges <?php include("database.php"); $sum = 2; // Antal billeder ved siden af hinanden $query = mysql_query("SELECT * FROM reklame ORDER BY RAND() LIMIT 3 ") or die(mysql_error()); print "<table class='top22'><tr>"; while($row = mysql_fetch_array($query)) { echo "<td width=250 height='60'><a href=\"$row[http]\" target=_blank> $row[alt]<img src=\"small/$row[navn]\" height=60 width=250 border=1 onMouseUp=\"className='visited'\" alt=\"$row[alt]\"></a></td>"; if ($sumcount == $sum) { $sumcount = 0; echo "</tr><tr>"; } $sumcount++; } echo "</td></tr></table>"; ?>
Annonceindlæg fra Deloitte
Al kode bliver brugt. Du kan evt. ændre en linje eller 2, men ikke fjerne noget, med mindre andet tilføjes.
$sum = 2; // Antal billeder ved siden af hinanden kan jo spares væk, hvis du sætter: if ($sumcount == $sum) { til: if ($sumcount == 2) { Men det vil selvfølgelig gøre koden sværere at rette i. Ellers bliver den vist ikke meget kortere nej. Hvorfor vil du have den kortere?
tænkte det nok men hvad med den her kan den ikke fjernes for i mine øjne bliver den ikke brugt til noget $sum = 2; jeg har jo den her i stedet for $query = mysql_query("SELECT * FROM reklame ORDER BY RAND() LIMIT 3 ") or die(mysql_error());
jo ville bare have den lidt mere overskulig og for det meste når ting bliver mindre bliver det også mere over skuligt :D
$sum = 2; bliver jo brugt her: if ($sumcount == $sum) { Men som før nævnt, kan du jo bare skrive 2-tallet direkte ind der.
<ole> bigtime >> Nej, meget ofte er en kompakt kode langt vanskeligere at læse =) /mvh </bole>
Skal: className='visited' i øvrigt ikke være: this.className='visited' ? Og evt.: this.className=this.class='visited' hvis det skal virke i flere browsere.
Ja, din kode bliver ikke meget bedre. =) Hvis dette er din mest komplekse kode, så har du en temmelig overskuelig kodestruktur på din side. ;)
w13 >> Nej, der er ingen browsere, der kan bruge this.class="bla" til noget. Problemet opstår først, hvis du bruger set-/getAttribute ;o)
01. juni 2008 - 22:45
#10
- og for at være mere specifik, så forstår alle browsere ELEMENT.className="bla", men IE forstår ikke ELEMENT.setAttribute("class", "bla") =)
01. juni 2008 - 22:46
#11
... på trods af, at den sidste er valid
01. juni 2008 - 22:49
#12
olebole>> Sorry, ja. Den smuttede lige. :)
01. juni 2008 - 22:55
#13
jeg siger bare mange tak for det :D det er altid godt der er nogen at spørge når man er i trivel :D
02. juni 2008 - 00:06
#14
Et lille eksempel på en kompakt, men ikke synderlig læselig kode: <script type="text/JavaScript"> var isGIF = document.getElementById("menu").getElementsByTagName("img")[0].split().pop().toLowerCase().indexOf("gif")!=-1; alert(isGIF) </script> Jeg ville klart foretrække 1000 linjer udfoldet kode, end 300 af den slags kompakte linjer ;o)
02. juni 2008 - 00:07
#15
Ups ... jeg manglede et tegn at splitte over =) var isGIF = document.getElementById("menu").getElementsByTagName("img")[0].split(".").pop().toLowerCase().indexOf("gif")!=-1;
02. juni 2008 - 00:09
#16
- og 'isGIF' er en boolean (true eller false), der tager værdi alt efter, om det første billede i elementet med id="menu" har extension'en 'gif' eller 'GIF' =)
02. juni 2008 - 00:11
#17
- og så manglede der dæleme også et lighedstegn: var isGIF == document.getElementById("menu").getElementsByTagName("img")[0].split(".").pop().toLowerCase().indexOf("gif")!=-1; Der kan du se. Jeg kan zq ikke engang finde ud af at skrive koden! :D
02. juni 2008 - 08:33
#18
olebole: Du drikker for meget kaffe! :o)
02. juni 2008 - 22:17
#19
- tværtimod ... derfor! ;D
01. september 2010 - 19:47
#20
kom med nogen svar for tror det er lukke tid
02. september 2010 - 08:18
#21
Svar!
03. september 2010 - 10:57
#22
Takker for point.
Vi tilbyder markedets bedste kurser inden for webudvikling