Anders Moen Skrevet 1. mars 2007 Del Skrevet 1. mars 2007 (endret) Hei! Driver å lager en tutorial side, hvor folk kan registrere seg, så kan de legge til tutorials og sånn, regner med at det blir et slags ranking opplegg snart óg, men først må jeg få ferdig hovedtingene. Det jeg nå har gjort, er å lage kategorier: PHP, ASP, ASP.NET og Photoshop så langt. Der man kan legge til nye tutorials, velger man hvilken kategori den skal under, så velger man f. eks ASP.NET, så vil det automatisk kommer i databasen i feltet "category" stå dotnet. Da vil linken fra ASP.NET sida (?page=dotnet), bli slik: echo "<a href=\"?page=" . $row['category'] . "&id=" . $row['id'] . "\">" . $row['title'] . "</a>"; og den vil f. eks linke til ?page=dotnet&id=35 Men det som er, er at da kan man selv skrive inn id=tall, men hvis tallet ikke finnes for en kategori, hvordan kan jeg få en melding som det f. eks står "Finnes ikke i denne kategorien"? Altså...jeg går til ?page=php&id=5 men ID 5 finnes ikke i kategorien PHP, så da får man beskjed om det. Har den !is_generic et eller annet, som sjekker om id er lik et tall, og hvis ikke, så inkluderer jeg en side som henter ut alle tutorialene for den kategorien. Si ifra hvis det ble så mye at det er umulig å skjønne, hehe! Mvh Anders Moen Endret 2. mars 2007 av Andy-Pandy Lenke til kommentar
-morten Skrevet 1. mars 2007 Del Skrevet 1. mars 2007 if (!mysql_num_rows(mysql_query("SELECT * FROM tabell WHERE kategori='$kategori' AND id='$id'"))) { die('Den finnes ikke osv'); } eller noe slikt. bruk mysql_num_rows() hvertfall. Merk forøvrig at is_numeric() godtar eksponent-notasjon og heksadesimale tall, så både '0xEA' og '1e1' er gyldige verdier. Hvis du vil sjekke at noe bare inneholder 0-9 kan du enten bruke regex: if (preg_match('/^[0-9]+$/', $var)) eller lage din egen funksjon som ikke bruker regex: function is_number($var) { if (is_int($var)) return true; if (is_string($var) && $var === (string)(int)$var) return true; return false; } Bare et lite tips Lenke til kommentar
Anders Moen Skrevet 1. mars 2007 Forfatter Del Skrevet 1. mars 2007 Ah, takk Den første fungerte gjettebra! Takk. Lenke til kommentar
Runar Skrevet 1. mars 2007 Del Skrevet 1. mars 2007 Vil bare legge til at i stedet for PHP <?php echo "<a href="?page=" . $row['category'] . "&id=" . $row['id'] . "">" . $row['title'] . "</a>"; ?> Så kan du skrive: PHP <?php echo "<a href="?page={$row['category']}&id={$row['id']}">{$row['title']}</a>"; ?> Klammeparenteser eller hva det heter ( {} ) kan brukes mange steder i PHP. Lenke til kommentar
Anders Moen Skrevet 1. mars 2007 Forfatter Del Skrevet 1. mars 2007 (endret) Ja, jeg visste vel forsovet det, men jeg syns det er like greit å skrive det jeg er vant til. Edit: dette blir den mest avanserte siden jeg har laget hittil, men siden jeg bruker index.php?page=et_eller_annet på alle sidene, tar jeg design til slutt. Nå har jeg bare lyst til å få selve systemet opp, hehe. Endret 2. mars 2007 av Andy-Pandy Lenke til kommentar
Peter Skrevet 3. mars 2007 Del Skrevet 3. mars 2007 *snip*Klammeparenteser eller hva det heter ( {} ) kan brukes mange steder i PHP. 8058109[/snapback] Dette vil ødelegge highlight i de fleste editorer, noe som gjør koden MINDRE oversiktlig. Jeg foretrekker den første skrivemåten, dog med litt mindre whitespace. Alt er jo smak og behag, men å ødelegge highlight tviler jeg på er noe andre setter pris på. Lenke til kommentar
Anders Moen Skrevet 3. mars 2007 Forfatter Del Skrevet 3. mars 2007 Hm, jaja... Jeg bruker ikke highglight_string uansett så. Jeg bruker bare vanlige bbKoder som jeg fant på bbcode.org. Men takk for at jeg fikk vite det. Mvh Anders Moen Lenke til kommentar
Runar Skrevet 3. mars 2007 Del Skrevet 3. mars 2007 *snip*Klammeparenteser eller hva det heter ( {} ) kan brukes mange steder i PHP. 8058109[/snapback] Dette vil ødelegge highlight i de fleste editorer, noe som gjør koden MINDRE oversiktlig. Jeg foretrekker den første skrivemåten, dog med litt mindre whitespace. Alt er jo smak og behag, men å ødelegge highlight tviler jeg på er noe andre setter pris på. 8066514[/snapback] Jeg baserer ikke koden min på at det skal se bra ut i programmet jeg bruker Men jeg skjønner hva du mener. Selv om fargene virker i programmet jeg bruker. Lenke til kommentar
Svish Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 (endret) lager et lite cms selv nå, og der driter jeg i hva folk sender inn som id. Etter tips fra php manualen selv så kjører jeg den bare igjennom sprintf med %u (unsigned int). Da vil det konverteres til et heltall uansett hva som kommer inn. sql injections og alt forsvinner pent så får for eksempel PHP $sql = sprintf("select * from php where id=%u limit 1;", $_GET['id']);$result = mysql_query($sql); veldig greit synes jeg! Og så har jeg for ordens skyld laget en funksjon som heter noe sånt som category_exists($id) som jeg bruker til å sjekke om en id finnes for eksempel. veldig kjekt synes jeg selv i hvert fall blitt veldig glad i sprintf og printf i det siste.. Endret 6. mars 2007 av Tussi_qwerty Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå