Avatar billede tcarlsen Nybegynder
11. april 2005 - 09:36 Der er 17 kommentarer og
1 løsning

vil ikke gemme i filen HJÆLP

hey sidder fast her.....
den vil ikke gemme det der er redigeret....

hvorfor nogen der kan se fejlen???

                  kode:
<?php
session_start();
if ($_SESSION['access'] != true) {
    header("Location: login.php");
    exit;
}
$filename = '../reg/forsidetext.html';
$somecontent = "Add this to the file\n";

if (is_writable($filename)) {

  if (!$handle = fopen($filename, 'a+')) {
        echo "Cannot open file ($filename)";
        exit;
  }

  if (fwrite($handle, $somecontent) === FALSE) {
      echo "Cannot write to file ($filename)";
      exit;
  }
 
  echo "Success, wrote ($somecontent) to file ($filename)";
 
  fclose($handle);

} else {
  echo "Der er sket en fjel med $filename kontakt TC-Design.dk";
}
?>

//noget tekst

<form action="textforside.php" method="post">
<textarea name="text" rows="10" cols="50"><?php
$fp = fopen('../reg/forsidetext.html','r+');
print fgets($fp, 1024);
fclose($fp);
?></textarea>
<br>
<p><input type="submit" name="submit" value="Gem"></p>
</form>


på forhånd tak
Avatar billede dennismp Nybegynder
11. april 2005 - 09:38 #1
Kommer der en fejl? eller hvad sker der?
Avatar billede tcarlsen Nybegynder
11. april 2005 - 09:40 #2
nej den kommer nemlig ikke med en fjel....
den siger det virker og at man godt kan skrive..

Success, wrote (Add this to the file ) to file (../reg/forsidetext.html)

men når man trykke gem intet! :C
Avatar billede hyberpreprocessor Nybegynder
11. april 2005 - 09:54 #3
øhh, glemt dette her spm ?

http://eksperten.dk/spm/608415
Avatar billede dennismp Nybegynder
11. april 2005 - 09:55 #4
Er du sikker på at du ser det rigtige sted efter din fil? Det virker nemlig fint her
Avatar billede tcarlsen Nybegynder
11. april 2005 - 09:56 #5
ja faktisk... men lige meget sidder stadig fast nu er jeg bare kommet det længere......
har du en id'e om hvorfor den ikke vil gemme...
Avatar billede tcarlsen Nybegynder
11. april 2005 - 09:56 #6
jep 100%
Avatar billede dennismp Nybegynder
11. april 2005 - 10:29 #7
har du set i filen (forsidetext.html) manuelt? (ikke via scriptet)? findes den? er den tom? hvis den findes, er den så blevet oprettet af scriptet?
Avatar billede tcarlsen Nybegynder
11. april 2005 - 11:09 #8
har næsten fået det til at virke....

kode:
if($_GET["mode"]=="write"){

$filename = "../reg/forsidetext.html";
$somecontent = $_POST["text"];

//unlink($filename);



  //echo "File is writable";

  if (($handle = fopen($filename, 'w+'))===false) {
        echo "FJEL! kontakt TC-Design.dk <> (Cannot open file ($filename))";
        exit;
  }

  //echo fwrite($handle, $somecontent); 

  if (fwrite($handle, nl2br($somecontent)) === FALSE) {
      echo "FJEL! kontakt TC-Design.dk <> (Cannot write to file ($filename))";
      exit;
  }
 
  echo "Success, wrote ($somecontent) to file ($filename)";

  fclose($handle);
 


}

?>

//text

<form action="textforside.php?mode=write" method="post">
<textarea name="text" rows="10" cols="50"><?php
$fp = fopen('../reg/forsidetext.html','r');
print fgets($fp, 1024);
fclose($fp);
?></textarea>
<br>
<p><input type="submit" name="submit" value="Gem"></p>
</form>

//////////////////////////////
nyt problem... nu vil den gerne gemme som den skal.... men kun den første linie hvis man laver linieskift i textareaet gemmer den ikke det????????
Avatar billede hyberpreprocessor Nybegynder
11. april 2005 - 11:41 #9
joo, det gør den :)

Dem gemmer linjeskift som \n , så du skal bruge www.php.net/nl2br for at se det pænt, når du outputter det igen.
Avatar billede tcarlsen Nybegynder
11. april 2005 - 11:44 #10
nej den gør nemlig ikke troede jeg også den ville.....

-textbox-
jhjkhkjhkj
sddssdds
sdssdasd
-textbox-

den gemmer:
jhjkhkjhkj<br />

og ikke andet den laver auto. et break men den gemmer ikke text derefter...???
Avatar billede dennismp Nybegynder
11. april 2005 - 11:54 #11
$fp = fopen('../reg/forsidetext.html','r');
print fgets($fp, 1024);
fclose($fp);

kunne du jo erstatte med

file_get_contents('../reg/forsidetext.html');

eller

include('../reg/forsidetext.html'); // men det kan jo være en sikkerhedsrisiko
Avatar billede tcarlsen Nybegynder
11. april 2005 - 12:27 #12
file_get_contents('../reg/forsidetext.html');

????

hvordan afhjælper det problemet med at den ikke optager mere end en linie???
Avatar billede dennismp Nybegynder
11. april 2005 - 13:02 #13
fgets() læser jo kun een linje fra filen, så hvis du trykker return, får du kun hentet den første linje fra filen.
Avatar billede tcarlsen Nybegynder
11. april 2005 - 13:06 #14
så ved at udskifte:
    $fp = fopen('../reg/forsidetext.html','r');
    print fgets($fp, 1024);
    fclose($fp);
med:
    file_get_contents('../reg/forsidetext.html');
burde det rette fejlen????
NICE prøver
Avatar billede tcarlsen Nybegynder
11. april 2005 - 13:23 #15
ved brug af:
    file_get_contents('../reg/forsidetext.html');
og
    include('../reg/forsidetext.html');

vises texten ikke i textareat?????
Avatar billede dennismp Nybegynder
11. april 2005 - 13:28 #16
dette virker ikke?
print file_get_contents('../reg/forsidetext.html');
Avatar billede tcarlsen Nybegynder
11. april 2005 - 13:32 #17
det virker!!!!!!!!!!!!!  :D:D:D:DD:D:D:D:D:D:D:D

fuck du er en skat!!!!

tak hvordan giver jeg dig points for din hjælp??
tak mand
Avatar billede dennismp Nybegynder
11. april 2005 - 14:11 #18
:)

Jeg skal smide et svar, før du får muligheden til at give mig points - det har du nu :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester