Dimethyltryptamine Skrevet 18. januar 2011 Del Skrevet 18. januar 2011 (endret) Ikke en veldig bra emnetittel, men det får holde. I stede for å start en ny tråd forsetter jeg med denne for det andre spørsmålet mitt, har fjernet alt som er irrelevant i første posten. Dere kan teste det selv på -- (her virker det ikke) eller -- (her virker det) får endret sider helt fint på -- -- <?php $endre=$_POST['endre']; if ($endre == "side1" |$endre == "side2" |$endre == "side3") { print '<h2>Endre ' . $endre . '</h2>'; $side = @fopen("$endre.php", "rt"); $kilde = fread($side,9000); print '<form method="post" action="edit1.php"><input type="hidden" name="side" value="' . $endre . '"><textarea name="text" rows="29" cols="70">' . $kilde . '</textarea></br><input type="submit" value="oppdater"/></form>'; ?> <br/> <br/> <a href="admin2.php">tilbake</a> <? } else { ?> <h1>Velg hvilken side du vil endre</h1> <h4> Tilgjengelige sider er: index, side2 og side3.</h4> <form name="endre" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <input type="text" name="endre"/> <input type="submit" /> </form> <? }?> edit1.php <?php //fjern ekstra "/" som havner rundt " if (get_magic_quotes_gpc()) { function strip_array($var) { return is_array($var)? array_map("strip_array", $var):stripslashes($var); } $_POST = strip_array($_POST); $_SESSION = strip_array($_SESSION); $_GET = strip_array($_GET); } $kilde = $_POST['text']; $endre = $_POST['side']; $side = fopen("$endre.php","w"); fwrite($side,$kilde); fclose($side); header('Location: admin.php'); ?> men på -- virker det ikke, er den samme koden bare endret på et par stier. -- <?php $endre=$_POST['endre']; if ($endre == "side1" |$endre == "side2" |$endre == "side3") { print '<h2>Endre ' . $endre . '</h2>'; $side = @fopen("--", "rt"); $kilde = fread($side,9000); print '<form method="post" action="--"><input type="hidden" name="side" value="' . $endre . '"><textarea name="text" rows="29" cols="70">' . $kilde . '</textarea></br><input type="submit" value="oppdater"/></form>'; ?> <br/> <br/> <a href="--">tilbake</a> <? } else { ?> <h1>Velg hvilken side du vil endre</h1> <h4> Tilgjengelige sider er: side1, side2 og side3.</h4> <form name="endre" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <input type="text" name="endre"/> <input type="submit" /> </form> <? }?> edit1.php <?php //fjern ekstra "/" som havner rundt " if (get_magic_quotes_gpc()) { function strip_array($var) { return is_array($var)? array_map("strip_array", $var):stripslashes($var); } $_POST = strip_array($_POST); $_SESSION = strip_array($_SESSION); $_GET = strip_array($_GET); } $kilde = $_POST['text']; $endre = $_POST['side']; $side = fopen("--","w"); fwrite($side,$kilde); fclose($side); header('Location: --'); ?> kommer ingen feilmeldinger. Endret 26. januar 2011 av lordbost Lenke til kommentar
roger99 Skrevet 18. januar 2011 Del Skrevet 18. januar 2011 (endret) Ser ut som det du forsøker å få til er en språkfil... Opprett norsk.php: <?php define('TITTEL', 'Dette er en tittel!'); ?> Opprett test.php: <?php include('norsk.php'); echo '<a href="index.html" class="link"><h3>' . TITTEL . '</h3></a>'; ?> Du kan også bruke $tittel i norsk.php hvor TITTEL byttes ut med $tittel, men jeg har alltid opprettet språkfiler med define, og synes det virker best til sin hensikt. Endret 18. januar 2011 av roger99 Lenke til kommentar
Dimethyltryptamine Skrevet 18. januar 2011 Forfatter Del Skrevet 18. januar 2011 (endret) tja, er ikke helst sikker på at er det jeg er ute etter. "dette er en test" skal være alt "innholdet" på siden. grunnen til at jeg vil include alt innholdet er så det blir litt enklere når jeg bruker admin/admin2.php til å endre på innholdet er der, så jeg kun ser teksten.. ble kanskje ikke så veldig bra forklart men hvis du går til -- å skriver inn side1, side2 eller side 3, så skjønner du kanskje hva jeg mener, for da viser den innholdet i include filen, grunnen til at jeg har $tittel i include filen er så man skal slippe og måtte endre f.eks index.php manuelt for å endre tittelen (helt øvers) på siden. Ble litt rotet, kan prøve å skrive det litt mer forklarlig senere. Endret 26. januar 2011 av lordbost Lenke til kommentar
FraXinuS Skrevet 18. januar 2011 Del Skrevet 18. januar 2011 Hvis jeg har skjønt det riktig så tror jeg den eneste måten å gjøre det på er slik: <?php ob_start(); include_once("include/side3.php") ?> $side3_content = ob_get_clean(); echo '<a href="index.html" class="link"><h3>' . $title . '</h3></a>'; ?> <div id="stuff"> <?php echo $side3_content; ?> </div> 1 Lenke til kommentar
Dimethyltryptamine Skrevet 19. januar 2011 Forfatter Del Skrevet 19. januar 2011 (endret) EDIT2: en liten skrive feil... Takk for hjelpen EDIT1: tror du at du kunne gi meg en rask forklaring på hva ob_start() og ob_get_clean() gjør jeg slo det opp på php.net, men kan ikke akkurat si at jeg skjønte mye, hehe. Endret 19. januar 2011 av lordbost Lenke til kommentar
Dimethyltryptamine Skrevet 19. januar 2011 Forfatter Del Skrevet 19. januar 2011 (endret) Dette begynner og bli en litt rotet post, beklager det. Nå virker side1 (index.php) helt perfekt. både teksten og tittelen kommer opp. problemet er med side2(2.php) og side3(3.php) Her kommer kun tittelen opp. Jeg skjønner ikke hvorfor teksten ikke kommer opp, alt koden er helt lik bortsett fra at jeg har endret side1 til side2 osv. dette er koden som er relevant i 2.php: <?php ob_start(); include_once("include/side2.php"); $side1_content = ob_get_clean(); print '<a href="index.html" class="link"><h3>' . $tittel . '</h3></a>' ?> <div id="stuff"> <?php echo $side2_content;?> </div> dette er alt som er i side2.php som ligger i include mappen: <? $tittel="Dette er en tittel til side2!"; ?> Dette er side 2 Link -- EDIT: faen jeg er blind er jo en skrivefeil der og.... EDIT2: Takk for hjelpen FraXinuS! Jeg framstår sikkert som en idiot for alle som har lest denne tråden Endret 26. januar 2011 av lordbost Lenke til kommentar
FraXinuS Skrevet 19. januar 2011 Del Skrevet 19. januar 2011 Når du bruker ob_start() blir alt output samlet opp i steden for å blir printet ut. Med ob_get_clean() så henter du ut det som har blitt samlet opp og avslutter det ob_start() startet slik at det går tilbake til slik det var fra før. 1 Lenke til kommentar
Dimethyltryptamine Skrevet 19. januar 2011 Forfatter Del Skrevet 19. januar 2011 (endret) takk for forklaringen . I stede for å start en ny tråd forsetter jeg med denne for det andre spørsmålet mitt, har fjernet alt som er irrelevant i første posten. Dere kan teste det selv på --- Edit: problem løst, etter at jeg flyttet include mappen inn i admin mappen fungerer alt perfekt. Endret 26. januar 2011 av lordbost 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å