Wackamole Skrevet 11. oktober 2007 Del Skrevet 11. oktober 2007 Hei, jeg lurer på hvordan man kan telle antall linjer, for og sette inn et bilde, for så og fortsette med f.eks. innlegg... Lenke til kommentar
Met_Fredrik Skrevet 11. oktober 2007 Del Skrevet 11. oktober 2007 Hva i all verden er det egentlig du snakker om? I hvilkenforbindelse osv? Lenke til kommentar
Wackamole Skrevet 11. oktober 2007 Forfatter Del Skrevet 11. oktober 2007 unnskyld for et så dårlig spørsmål, men det jeg mener er at først vil jeg at PHP skal telle til f.eks 5, (5 antall innlegg) også skal det settes inn en annonse (f.eks) så skal PHP fortsette men og printe ut innleggene.. Lenke til kommentar
kakkle Skrevet 11. oktober 2007 Del Skrevet 11. oktober 2007 $teller = 1 while($innleggikkeerslutt) { Skriv ut innlegg if($teller%5==0) { skriv ut en annonse } $teller ++ } Lenke til kommentar
Wackamole Skrevet 11. oktober 2007 Forfatter Del Skrevet 11. oktober 2007 (endret) Kakkle, jeg er ikke helt sikker på hvor jeg skal plassere koden din... Det er denne koden jeg har (den delen jeg tror telle scriptet skal være) Klikk for å se/fjerne innholdet nedenfor if ( (!isset( $_GET['action'] )) || (empty( $_GET['action'] )) || ($_GET['action'] === "veiw" )) { $posttoreplace = array( "/{emailorurl}/", "/{name}/", "/{comments}/", "/{date}/", ); $fp = fopen( $config["guestbookpost"], "r" ); $posttpl = fread( $fp, filesize( $config["guestbook"] ) ); fclose( $fp ); if( !isset($_GET['num']) || !is_numeric($_GET['num']) ) { $start = 0; $end = $config["numpostsperpage"]; } else { $start = $_GET['num'] * $config["numpostsperpage"]; $end = $start + $config["numpostsperpage"]; } $title = "FredrikMoe.com - Gjestebok"; if( $config["newestfirst"] === "yes" ) { $order = " ORDER BY `ID` DESC "; } else { $order = " ORDER BY `ID` ASC "; } $query = mysql_query( "SELECT * FROM ".$config["mysqlguestbooktable"]."".$order."LIMIT ".$start.",".$end."" ); $isresults = FALSE; $i = 0; $posts = ""; while( $post = mysql_fetch_array( $query, MYSQL_ASSOC ) ) { if( strstr ( $post["EMAILORURL"], "@" ) ) { $emailorurl = "mailto:".stripslashes( $post["EMAILORURL"] ); } else { if( preg_match( "/http:\/\//i", $post["EMAILORURL"] ) ) { $emailorurl = stripslashes( $post["EMAILORURL"] ); } else { $emailorurl = "http://".stripslashes( $post["EMAILORURL"] ); } } $comments = preg_replace($smiles, $rsmiles, stripslashes( $post["COMMENTS"] )); $name = stripslashes( $post["NAME"] ); $postreplace = array( $emailorurl, $name, $comments, $post["DATE"] ); $posts .= preg_replace($posttoreplace, $postreplace, $posttpl); $i++; } $text .= "<br /><br />"; if( $i >= $config["numpostsperpage"] ) { $isresults = TRUE; } if( $start >= $config["numpostsperpage"] ) { $prev = ($start / $config["numpostsperpage"]) - 1; $posts .= "<a href=\"".$_SERVER['PHP_SELF']."?num=".$prev."\">Forrige</a> "; } if( $isresults ) { $next = ($start / $config["numpostsperpage"]) + 1; $posts .= " <a href=\"".$_SERVER['PHP_SELF']."?num=".$next."\">Neste</a>\n"; } Endret 11. oktober 2007 av Microsoftbruker Lenke til kommentar
kakkle Skrevet 12. oktober 2007 Del Skrevet 12. oktober 2007 Du må legge inn $teller=1 før while løkken som skriver ut innleggene, også legger du inn if setningen etter du har skrevet ut et innlegg (inni while løkken). $teller++ må da være på slutten av whileløkken. Ser forresten at du allerede har en $i som du bruker, så du kan jo bare bruke den, istedetfor å lage en ny $teller. Men pass da på at siden den starter på 0, så vil 0%5 ==0, dvs at den vil begynne med en annonse etter det første innlegget allerede, men det er bare å plusse på 1 i if setningen. Lenke til kommentar
Wackamole Skrevet 12. oktober 2007 Forfatter Del Skrevet 12. oktober 2007 Det funket ikke (eller jeg har gjort en feil) Her er koden, tror jeg gjorde som du sa... Klikk for å se/fjerne innholdet nedenfor $query = mysql_query( "SELECT * FROM ".$config["mysqlguestbooktable"]."".$order."LIMIT ".$start.",".$end."" ); $isresults = FALSE; $i = 1; $posts = ""; while( $post = mysql_fetch_array( $query, MYSQL_ASSOC ) ) { if( strstr ( $post["EMAILORURL"], "@" ) ) { $emailorurl = "mailto:".stripslashes( $post["EMAILORURL"] ); } else { if( preg_match( "/http:\/\//i", $post["EMAILORURL"] ) ) { $emailorurl = stripslashes( $post["EMAILORURL"] ); } else { $emailorurl = "http://".stripslashes( $post["EMAILORURL"] ); } } if($i%5==0) { echo 'skriv ut en annonse'; } $comments = preg_replace($smiles, $rsmiles, stripslashes( $post["COMMENTS"] )); $name = stripslashes( $post["NAME"] ); $postreplace = array( $emailorurl, $name, $comments, $post["DATE"] ); $posts .= preg_replace($posttoreplace, $postreplace, $posttpl); $i++; } Den printer ut "Skriv en annonse" men den printer den i toppen av gjesteboken. Lenke til kommentar
kakkle Skrevet 14. oktober 2007 Del Skrevet 14. oktober 2007 Det ser ikke ut som om du skriver ut innleggene inni while løkken, men legger de inn i en variabel, kanskje ? Da må du isåfall også legge disse annonsene inn i variabelen. F.eks: if($i%5==0) { $posts .= "Skriv inn en annonse her, kanskje ?"; } Eller noe sånt. 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å