Gå til innhold

[Løst] fwrite endrer ikke teksten.


Anbefalte innlegg

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. :hmm:

Endret av lordbost
Lenke til kommentar
Videoannonse
Annonse

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 av roger99
Lenke til kommentar

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 av lordbost
Lenke til kommentar

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>

  • Liker 1
Lenke til kommentar

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 :thumbdown:

 

 

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 :blush:

Endret av lordbost
Lenke til kommentar

takk for forklaringen :thumbup:.

 

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 av lordbost
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...