/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Feil med fread()
Fra : Jan V.Pedersen


Dato : 10-08-03 17:36

Hei!

Jeg får feil ved å bruke disse variablene.

$file = fopen($article, "r");
   $data = fread($file, 1000);
   fclose($file);
   print("$data");


Er det feil i syntaxen?

--
mvh Jan Vidar
www.janvidar.com

 
 
Peter Brodersen (10-08-2003)
Kommentar
Fra : Peter Brodersen


Dato : 10-08-03 17:38

On Sun, 10 Aug 2003 18:35:40 +0200, Jan V.Pedersen
<janvidar_rem_this_@start.no> wrote:

>Jeg får feil ved å bruke disse variablene.

Hvilken fejl får du? Og hvad indeholder $article?

--
- Peter Brodersen

Ugens sprogtip: udmærket (og ikke udemærket)

Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 17:40

Peter Brodersen:
> On Sun, 10 Aug 2003 18:35:40 +0200, Jan V.Pedersen
> <janvidar_rem_this_@start.no> wrote:
>
> >Jeg får feil ved å bruke disse variablene.
>
> Hvilken fejl får du?

Warning: fopen("", "r") - No error in c:\phpdev\www\trening\kap_6
\chapter6\dynamic_template.php3 on line 42

Warning: fread(): supplied argument is not a valid File-Handle resource
in c:\phpdev\www\trening\kap_6\chapter6\dynamic_template.php3 on line 43

Warning: fclose(): supplied argument is not a valid File-Handle resource
in c:\phpdev\www\trening\kap_6\chapter6\dynamic_template.php3 on line 44


> Og hvad indeholder $article?

Artikkel er en html-fil som heter "article.html"

Her er hele scriptet:
---------------------------
<html>
<head>
   <title>The Dynamic Article</title>
</head>
<body>
<?

if(isset($format)):
   if($format == "print"):
      $file = fopen($article, "r");
      $data = fread($file, 1000);
      fclose($file);
      $stripped_data = strip_tags($data);
      print("<pre>$stripped_data</pre>");
   elseif($format == "email"):
      ?>
      <h2>Send Article</h2>
      <form action="dynamic_template.php3" method="POST">
      <p>Send to Email: <input type="text" name="to">
      <br>Your Email: <input type="text" name="from">
      <br>Short Comment: <input type="text" name="comment">
      <input type="hidden" name="article" value="<? echo $article
?>">
      <br><input type="submit" name="submit" value="Send It!">
      </form>
      <?
   endif;
elseif(isset($submit)):
   $file = fopen($article, "r");
   $data = fread($file, 1000);
   fclose($file);
   $stripped_data = strip_tags($data);
   $body = "Comments from sender: " . $comment . "\n\n" .
$stripped_data;
   $subject = "Check This Article Out!";
   mail($to, $subject, $body, "FROM: $from");
   ?>
   <h2>Email has been sent</h2>
   <hr>
   <?
   print("To: $to<br>From: $from<br>Subject: $subject<p><pre>$body
</pre><hr>\n");
   
else:
   $file = fopen($article, "r");
   $data = fread($file, 1000);
   fclose($file);
   print("$data");
   ?>
   <hr>
   <p>Format this article for <a href="dynamic_template.php3?article=
<? echo $article ?>&format=print">printing</a>!
   <br><a href="dynamic_template.php3?article=<? echo $article ?>
&format=email">Send</a> this article to a friend!
   <?
endif;

?>
</body>
</html>
-------------------------------------------

--
mvh Jan Vidar
www.janvidar.com

Christian Joergensen (10-08-2003)
Kommentar
Fra : Christian Joergensen


Dato : 10-08-03 17:59

On Sun, 10 Aug 2003 18:40:18 +0200, Jan V. Pedersen wrote:

>> Og hvad indeholder $article?
>
> Artikkel er en html-fil som heter "article.html"

Prøv med $_POST['article'] og læs lige om register_globals

--
Christian Jørgensen | Never make any mistaeks.
http://www.razor.dk |


Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 18:13

Christian Joergensen:
> On Sun, 10 Aug 2003 18:40:18 +0200, Jan V. Pedersen wrote:
>
> >> Og hvad indeholder $article?
> >
> > Artikkel er en html-fil som heter "article.html"
>
> Prøv med $_POST['article'] og læs lige om register_globals
>
>
Jeg har register_globals off.

Er det slik du mener?
-------------------
else:
   $file = $_POST['article.html']
   //$file = fopen($article, "r");
   $data = $_POST[$file, 1000]
   //$data = fread($file, 1000);
   fclose($file);
   print("$data");
--------------------
--
mvh Jan Vidar
www.janvidar.com

Christian Joergensen (10-08-2003)
Kommentar
Fra : Christian Joergensen


Dato : 10-08-03 18:20

On Sun, 10 Aug 2003 19:12:58 +0200, Jan V. Pedersen wrote:

>> Prøv med $_POST['article'] og læs lige om register_globals

> Jeg har register_globals off.

> Er det slik du mener?

[snip - kode]

Virker det?

--
Christian Jørgensen | In order to understand recursion
http://www.razor.dk | one must understand recursion.


Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 18:22

Christian Joergensen:
> On Sun, 10 Aug 2003 19:12:58 +0200, Jan V. Pedersen wrote:
>
> >> Prøv med $_POST['article'] og læs lige om register_globals
>
> > Jeg har register_globals off.
>
> > Er det slik du mener?
>
> [snip - kode]
>
> Virker det?
>
>
Nei, jeg får feil "Parse error: parse error in c:\phpdev\www\trening
\kap_6\chapter6\tmpfw11mjeytn.php3 on line 44
"

I linje 44 står denne kommandoen:
$data = $_POST[$file, 1000]

--
mvh Jan Vidar
www.janvidar.com

Christian Joergensen (10-08-2003)
Kommentar
Fra : Christian Joergensen


Dato : 10-08-03 18:27

On Sun, 10 Aug 2003 19:21:31 +0200, Jan V. Pedersen wrote:

> I linje 44 står denne kommandoen:
> $data = $_POST[$file, 1000]

Du er lidt på vildspor her. Det er kun input fra POST metoden du henter
med $_POST.

   $fp = fopen($_POST['article'], 'r');
   $data = fread($fp, 42);
   fclose($fp);

Læs i øvrigt følgende link godt og grundigt:
http://www.php.net/manual/en/language.variables.predefined.php

--
Christian Jørgensen | Pity the poor egg: it only gets laid once.
http://www.razor.dk |


Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 18:47

Christian Joergensen:
> Du er lidt på vildspor her. Det er kun input fra POST metoden du henter
> med $_POST.
>
>
Men så vidt jeg kan se, er det bare _en_ plass POST kommer inn her, og
det er inni form_action, altså i denne linjen:

<form action="dynamic_template.php3" method="POST">


--
mvh Jan Vidar
www.janvidar.com

Christian Joergensen (10-08-2003)
Kommentar
Fra : Christian Joergensen


Dato : 10-08-03 18:51

On Sun, 10 Aug 2003 19:47:05 +0200, Jan V. Pedersen wrote:

> Men så vidt jeg kan se, er det bare _en_ plass POST kommer inn her, og
> det er inni form_action, altså i denne linjen:
>
> <form action="dynamic_template.php3" method="POST">

Du må meget undskylde - men du må lige forklare ovenstående engang til.
Jeg kan nemlig ikke lige hitte ud af hvad du mener

--
Christian Jørgensen | In order to understand recursion
http://www.razor.dk | one must understand recursion.


Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 18:55

Christian Joergensen:
> Du må meget undskylde - men du må lige forklare ovenstående engang til.
> Jeg kan nemlig ikke lige hitte ud af hvad du mener
>
>
Hehe :)

Når jeg leser om disse POST, GET, REQUEST i alle nyhetsgrupper, har jeg
fått det inntrykket at disse skal brukes i form. Altså inni en
programbit som begynner med <form action> og avsluttes med </form>

Jeg bruker Dreamwiever MX, og når jeg skriver "method" så kommer "post"
automatisk opp.

Er det heller "alle variabler som hentes utenfor scriptet, som skal
bruke $_post[variabel] ??
--
mvh Jan Vidar
www.janvidar.com

JMo. (10-08-2003)
Kommentar
Fra : JMo.


Dato : 10-08-03 19:19

Jan V.Pedersen <janvidar_rem_this_@start.no> wrote in
news:MPG.19a0a5632ce055849896fc@news.online.no:

> Er det heller "alle variabler som hentes utenfor scriptet, som skal
> bruke $_post[variabel] ??

$_POST er:
alle variabler du henter fra Forms, hvor du har sat METHOD="POST".

$_GET er:
1) alle variabler du henter fra Forms, hvor du har sat METHOD="GET"
2) alle du henter fra din query-string
(http://domain.tld/script.php?var1=foo&var2=bar - hentes som $_GET["var1"]
og $_GET["var2"])

$_REQUEST er:
$_GET og $_POST blandet sammen (+ $_COOKIE) - bruges hvis du ikke ønsker at
undersøge om din variabel kommer fra en POST eller en GET


Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 20:34

JMo.:
> $_POST er:
> alle variabler du henter fra Forms, hvor du har sat METHOD="POST".
>
> $_GET er:
> 1) alle variabler du henter fra Forms, hvor du har sat METHOD="GET"
> 2) alle du henter fra din query-string
> (http://domain.tld/script.php?var1=foo&var2=bar - hentes som $_GET["var1"]
> og $_GET["var2"])
>
> $_REQUEST er:
> $_GET og $_POST blandet sammen (+ $_COOKIE) - bruges hvis du ikke ønsker at
> undersøge om din variabel kommer fra en POST eller en GET
>
>
>
Takk - det løste en del floker for meg :)
--
mvh Jan Vidar
www.janvidar.com

JMo. (10-08-2003)
Kommentar
Fra : JMo.


Dato : 10-08-03 20:58

Jan V.Pedersen <janvidar_rem_this_@start.no> wrote in
news:MPG.19a0bc7bb06fce239896fd@news.online.no:

[GET vs POST]

> Takk - det løste en del floker for meg :)

Sålidt...

Tag evt. et kig på
http://dk.php.net/manual/en/language.variables.external.php

- her er det uddybet mht. PHP.

JMo. (10-08-2003)
Kommentar
Fra : JMo.


Dato : 10-08-03 21:00

"JMo." <ns_sf010@mohr.cx> wrote in
news:Xns93D3DF8464500JMoUsenetPost@212.54.64.149:

> http://dk.php.net/manual/en/language.variables.external.php

Skulle naturligvis have været:

http://no.php.net/manual/en/language.variables.external.php

)

Jan V.Pedersen (10-08-2003)
Kommentar
Fra : Jan V.Pedersen


Dato : 10-08-03 21:30

JMo.:
> "JMo." <ns_sf010@mohr.cx> wrote in
> news:Xns93D3DF8464500JMoUsenetPost@212.54.64.149:
>
> > http://dk.php.net/manual/en/language.variables.external.php
>
> Skulle naturligvis have været:
>
> http://no.php.net/manual/en/language.variables.external.php
>
> )
>
Takk! Det var en flott link. Syns det er lettest å forstå når det er
eksempler - og det er det her :)
--
mvh Jan Vidar
www.janvidar.com

Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408534
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste