www.ProFTPD.de

Linux => Linux => Thema gestartet von: InFlame am 13. November 2003, 18:37:12



Titel: *.php3 bei apache
Beitrag von: InFlame am 13. November 2003, 18:37:12
Hallo,

wie ihr merkt, bin ich nich gerade der profi was linux, apache und php betrifft, aber man will ja lernen ;)
nur hab ich jetzt ein problem.
denn mein apache mag die dateien mit *.php3 nicht. und wenn ich sie dann nur php nenne, scheint der wohl einige befehle nicht zu kennen?
oder was ist daran falsch:
Code:
<?php
endwhile;
?>

jedenfalls bleibt er immer bei der zeile hängen!
(Parse error: parse error in /usr/local/httpd/htdocs/forumshow.php on line 76[= das oben])

liegt es daran, dass er mit php nicht alles kennt und es eben php3 heißen muss? wenn ja, wie schaff ich das, dass der php3 auch lesen kann?

jedenfalls bin ich vollkommen ratlos... :??  :(

bin für jede hilfe sehr dankbar!!!


Titel: *.php3 bei apache
Beitrag von: Wörsty am 13. November 2003, 19:09:32
Verstehe zwar kein Wort aber manchmal sind nur unsichtbare Steuerzeichen schuld :idea:


Titel: *.php3 bei apache
Beitrag von: InFlame am 13. November 2003, 19:12:34
hmm... was verstehst du denn nich?
naja, also was ich will ist:
Wie mach ich, dass der *.php3 auch als php verarbeitet? das tut er bei mir nämlich nicht!


Titel: *.php3 bei apache
Beitrag von: InFlame am 14. November 2003, 14:14:07
:(


Titel: *.php3 bei apache
Beitrag von: stonki am 14. November 2003, 16:03:05
Zitat von: "InFlame"
:(


in deiner httpd.conf

    <IfModule mod_php3.c>
    AddType application/x-httpd-php3 .php3
    AddType application/x-httpd-php3-source .phps
    AddType application/x-httpd-php3 .phtml
[...]

    <IfModule mod_php4.c>
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .php4
    AddType application/x-httpd-php-source .phps
[...]

Du wirst wahrscheinlich PHP4 haben, also dort noch eine Zeile mit ".php3" hinzufuegen.  

cu
stonki


Titel: *.php3 bei apache
Beitrag von: InFlame am 14. November 2003, 16:34:36
hab ich auch schonmal geguckt, das isses aber nich, denn das hierst steht in der conf

    # Some more types:

    #
    # PHP 3.x:
    #
    <IfModule mod_php3.c>
    AddType application/x-httpd-php3 .php3
    AddType application/x-httpd-php3-source .phps
    AddType application/x-httpd-php3 .phtml
    </IfModule>
#AddType
    #
    # PHP 4.x:
    #
    <IfModule mod_php4.c>
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .php4
    AddType application/x-httpd-php-source .phps
    </IfModule>


Titel: *.php3 bei apache
Beitrag von: stonki am 14. November 2003, 17:12:11
Zitat von: "InFlame"
hab ich auch schonmal geguckt, das isses aber nich, denn das hierst steht in der conf


doch ! Nochmal. Wenn Du PHP4 hast (und davon gehe ich aus), dann wird ja nur der PHP4 Block geparst. Also keine Endung fuer .php3

cu
stonki


Titel: *.php3 bei apache
Beitrag von: InFlame am 14. November 2003, 17:19:44
versteh zwar nich genau, was du meinst aber ok, es geht :D
danke für die hilfe!
nur kommt der fehler tortzdem  :x


Titel: *.php3 bei apache
Beitrag von: stonki am 14. November 2003, 17:56:40
Zitat von: "InFlame"
versteh zwar nich genau, was du meinst aber ok, es geht :D
danke für die hilfe!
nur kommt der fehler tortzdem  :x


also mal langsam und vollstaendig:

Du startest Apache. Apache prueft ob die Module PHP3 oder PHP4 vorhanden ist. Im Falle von PHP sagt apache:

AddType application/x-httpd-php .php
AddType application/x-httpd-php .php4
[...]

Die Endung ".php" oder ".php4" werden von PHP (x-httpd-php) bearbeitet. Siehst Du da was von .php3 ? Nein, siehste  :lol:  Wenn Du da also noch ne Zeile "AddType application/x-httpd-php .php3" einfuegen wuerdest, dann wurde es auch gehen. Oder "AddType application/x-httpd-php .stonki", dann werden alle Dateien die mit ".stonki" enden als PHP File interpretiert...

Zu Deinem anderen Problem:
Ich verstehe Dich nicht :) Endwhile benoetigt ja immer ein "While". Siehe auch hier: http://uk.php.net/while


Ich wuerde erst einmal ein PHP File erstellen, in dem steht:

<?
phpinfo();
?>

das als test.php abspeichern und im browser aufrufen, dann siehste erst einmal was Du fuer ne PHP Version etc. hast.

cu
stonki


Titel: *.php3 bei apache
Beitrag von: InFlame am 14. November 2003, 22:45:53
Zitat
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php4
[...]

Die Endung ".php" oder ".php4" werden von PHP (x-httpd-php) bearbeitet. Siehst Du da was von .php3 ? Nein, siehste  Wenn Du da also noch ne Zeile "AddType application/x-httpd-php .php3" einfuegen wuerdest, dann wurde es auch gehen. Oder "AddType application/x-httpd-php .stonki", dann werden alle Dateien die mit ".stonki" enden als PHP File interpretiert...
soweit war mir das schon klar! hehe..
aber ich dachte eben, dass das hier das ist:

# PHP 3.x:
#
<IfModule mod_php3.c>
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
AddType application/x-httpd-php3 .phtml
</IfModule>

scheint nicht so zu sein? naja, egal, jedenfalls gehts ;)


Zitat
Zu Deinem anderen Problem:
Ich verstehe Dich nicht  Endwhile benoetigt ja immer ein "While". Siehe auch hier: http://uk.php.net/while
schon klar, es gibt ja auch ne while schleife!
also ich lerne gerade :D und hab das aus nem buch abgetippt
hier das ganze:

Code:
<?php
if&
#40;isset&#40;$pos&#41;==0&#41;
$pos=0;
$count=20;
mysql_connect&#40;"localhost","forum","test."&#41;;
mysql_select_db&#40;"forum"&#41;
?>


<HTML>
<HEAD>
<TITLE>Gästebuch</TITLE>
</HEAD>
<BODY>
<H1>
<center>Forum anzeigen</center><H1><center>
<table border="0" cellspacing="0" width="100%">
<form action="forumshow.php" method="post">
<input type="Hidden" name="go" value="1">
<tr>
<td>
<center><h1>Forum</h1></center>
</td>
</tr>
<tr>
<td>
<table border="0" align="center">
<tr>
<td>Name: </td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td>Email: </td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td valign=top>Forumbeitrag: </td>
<td><textarea name="beitrag" cols="40" rows="10"> </textarea></td>
</tr>
<tr>
<TD COLSPAN="2" ALIGN="CENTER"><input type="submit" value="Abschicken"></td>
</tr>
</table>
</td>
</tr>
</form>
<tr>
<td>
<table border="0" align="center" width="400">
<?php
if &#40;$go==1&#41; &#123;
if &#40;$name=="" || $email=="" || $beitrag==""&#41; &#123;
?>


<?php
&#125; else &#123;
$datum=date&#40;"Y-m-d"&#41;;
mysql_query&#40;"INSERT INTO gb &#40;name,email,datum,beitrag&#41; VALUES &#40;'$name','$email','$datum','$beitrag'&#41;"&#41;;
&#125;
&#125;
$an_id=mysql_query&#40;"SELECT name,email,datum,beitrag FROM gb ORDER BY forumid LIMIT $pos,$count"&#41;;
while &#40;$zeile=Mysql_fetch_array&#40;$an_id&#41;&#41;;
$name=htmlspecialchars&#40;$zeile["name"&#93;&#41;;
$email=htmlspecialchars&#40;$zeile["email"&#93;&#41;;
$datum=$zeile["datum"&#93;;
$beitrag=$zeile["beitrag"&#93;;
$beitrag=htmlspecialchars&#40;$beitrag&#41;;
$beitrag=n12br&#40;$beitrag&#41;;
?>

</table></tr>
<td colspan=2>
<br>Name: &nbsp;<?php echo $name?> &nbsp; Datum:&nbsp;<?php echo $datum?> <br> Email:&nbsp;<a href='mailto:<?php echo $email; ?'><?php echo $email; ?></a><p>
<?php echo $beitrag?>
</td>
</tr>
<?php
endwhile;
?>

<tr>
<TD WIDTH="50%" Align="left">  <p>
<?php 
if &
#40;$pos=0&#41;;
?>

<A href="forumshow.php?pos=<?php echo $pos-$count;?>">zurück</a> <? php endif; ?>
</td>
<TD width="50%" align="right">
<?php
if&
#40;mysql_num_rows&#40;$an_id&#41;>=$pos+$count&#41;;
?>

<a href="forumshow.php?pos=<?php echo $pos+$count;?>">vor</a><?php endif; ?>
</td>
</tr>
</table>



</center>
</h1></h1></body>
</html>
<?php 
mqsql_close
&#40;&#41;;
?>



Zitat
<?
phpinfo();
?>
[/code]hehe, das wäre das nächste was ich mal gefragt hätte :D
PHP Version 4.1.0 hab ich installiert...


Titel: *.php3 bei apache
Beitrag von: InFlame am 14. November 2003, 22:48:22
Zitat von: "InFlame"
Zitat
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php4
[...]

Die Endung ".php" oder ".php4" werden von PHP (x-httpd-php) bearbeitet. Siehst Du da was von .php3 ? Nein, siehste  Wenn Du da also noch ne Zeile "AddType application/x-httpd-php .php3" einfuegen wuerdest, dann wurde es auch gehen. Oder "AddType application/x-httpd-php .stonki", dann werden alle Dateien die mit ".stonki" enden als PHP File interpretiert...
soweit war mir das schon klar! hehe..
aber ich dachte eben, dass das hier das ist:

# PHP 3.x:
#
<IfModule mod_php3.c>
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
AddType application/x-httpd-php3 .phtml
</IfModule>

scheint nicht so zu sein? naja, egal, jedenfalls gehts ;)


Zitat
Zu Deinem anderen Problem:
Ich verstehe Dich nicht  Endwhile benoetigt ja immer ein "While". Siehe auch hier: http://uk.php.net/while
schon klar, es gibt ja auch ne while schleife!
also ich lerne gerade :D und hab das aus nem buch abgetippt
hier das ganze:

Code:
<?php
if&
#40;isset&#40;$pos&#41;==0&#41;
$pos=0;
$count=20;
mysql_connect&#40;"localhost","forum","test."&#41;;
mysql_select_db&#40;"forum"&#41;
?>


<HTML>
<HEAD>
<TITLE>Gästebuch</TITLE>
</HEAD>
<BODY>
<H1>
<center>Forum anzeigen</center><H1><center>
<table border="0" cellspacing="0" width="100%">
<form action="forumshow.php" method="post">
<input type="Hidden" name="go" value="1">
<tr>
<td>
<center><h1>Forum</h1></center>
</td>
</tr>
<tr>
<td>
<table border="0" align="center">
<tr>
<td>Name: </td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td>Email: </td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td valign=top>Forumbeitrag: </td>
<td><textarea name="beitrag" cols="40" rows="10"> </textarea></td>
</tr>
<tr>
<TD COLSPAN="2" ALIGN="CENTER"><input type="submit" value="Abschicken"></td>
</tr>
</table>
</td>
</tr>
</form>
<tr>
<td>
<table border="0" align="center" width="400">
<?php
if &#40;$go==1&#41; &#123;
if &#40;$name=="" || $email=="" || $beitrag==""&#41; &#123;
?>


<?php
&#125; else &#123;
$datum=date&#40;"Y-m-d"&#41;;
mysql_query&#40;"INSERT INTO gb &#40;name,email,datum,beitrag&#41; VALUES &#40;'$name','$email','$datum','$beitrag'&#41;"&#41;;
&#125;
&#125;
$an_id=mysql_query&#40;"SELECT name,email,datum,beitrag FROM gb ORDER BY forumid LIMIT $pos,$count"&#41;;
while &#40;$zeile=Mysql_fetch_array&#40;$an_id&#41;&#41;;
$name=htmlspecialchars&#40;$zeile["name"&#93;&#41;;
$email=htmlspecialchars&#40;$zeile["email"&#93;&#41;;
$datum=$zeile["datum"&#93;;
$beitrag=$zeile["beitrag"&#93;;
$beitrag=htmlspecialchars&#40;$beitrag&#41;;
$beitrag=n12br&#40;$beitrag&#41;;
?>

</table></tr>
<td colspan=2>
<br>Name: &nbsp;<?php echo $name?> &nbsp; Datum:&nbsp;<?php echo $datum?> <br> Email:&nbsp;<a href='mailto:<?php echo $email; ?'><?php echo $email; ?></a><p>
<?php echo $beitrag?>
</td>
</tr>
<?php
endwhile;
?>

<tr>
<TD WIDTH="50%" Align="left">  <p>
<?php 
if &
#40;$pos=0&#41;;
?>

<A href="forumshow.php?pos=<?php echo $pos-$count;?>">zurück</a> <? php endif; ?>
</td>
<TD width="50%" align="right">
<?php
if&
#40;mysql_num_rows&#40;$an_id&#41;>=$pos+$count&#41;;
?>

<a href="forumshow.php?pos=<?php echo $pos+$count;?>">vor</a><?php endif; ?>
</td>
</tr>
</table>



</center>
</h1></h1></body>
</html>
<?php 
mqsql_close
&#40;&#41;;
?>



Zitat
<?
phpinfo();
?>
hehe, das wäre das nächste was ich mal gefragt hätte :D
PHP Version 4.1.0 hab ich installiert...


Titel: *.php3 bei apache
Beitrag von: stonki am 15. November 2003, 10:43:12
Zitat von: "InFlame"

aber ich dachte eben, dass das hier das ist:

# PHP 3.x:
#
<IfModule mod_php3.c>
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
AddType application/x-httpd-php3 .phtml
</IfModule>

scheint nicht so zu sein? naja, egal, jedenfalls gehts ;)


NEIN ! Wenn Du PHP 4 installiert hast, hast Du KEIN PHP3 installiert. Und was ergibt dann eine Abfrage "IFmodule PHP3" ?? NIX ! ERGO wird das nicht ausgefuehrt.


Zitat

while ($zeile=Mysql_fetch_array($an_id));
   endwhile;


also AUSNAHMSWEISE: denn mein Leben ist mit ProFTPD schon ausgelastet :) und ich will hier keinen PHP Workshop raus machen :) Aber "==" statt "=" sollte den Fehler beheben....

cu
stonki


Titel: *.php3 bei apache
Beitrag von: InFlame am 15. November 2003, 12:50:56
Zitat
NEIN ! Wenn Du PHP 4 installiert hast, hast Du KEIN PHP3 installiert. Und was ergibt dann eine Abfrage "IFmodule PHP3" ?? NIX ! ERGO wird das nicht ausgefuehrt.
ach soooo... jetzt versteh ich! wie dumm ;) danke für die geduld :D

Zitat
also AUSNAHMSWEISE: denn mein Leben ist mit ProFTPD schon ausgelastet  und ich will hier keinen PHP Workshop raus machen  Aber "==" statt "=" sollte den Fehler beheben....
vielen vielen dank für die ausnahme, aber leider wars das nicht. kommt immer noch der fehler mit "Parse error: parse error in /usr/local/httpd/htdocs/forumshow.php3 on line 76"
:(
tortzdem danke!


Titel: *.php3 bei apache
Beitrag von: stonki am 15. November 2003, 13:37:38
Zitat von: "InFlame"
"Parse error: parse error in /usr/local/httpd/htdocs/forumshow.php3 on line 76"
:(
tortzdem danke!


fuege mal in der while zeile ein ":" an:
http://uk2.php.net/manual/de/control-structures.while.php


Titel: *.php3 bei apache
Beitrag von: InFlame am 15. November 2003, 13:47:03
Zitat von: "stonki"
Zitat von: "InFlame"
"Parse error: parse error in /usr/local/httpd/htdocs/forumshow.php3 on line 76"
:(
tortzdem danke!


fuege mal in der while zeile ein ":" an:
http://uk2.php.net/manual/de/control-structures.while.php
tatsächlich... zeile 75 ist wohl in ordnung jetzt... jetzt meckert er über zeile 83... hehe ;)

aber.. hmmm... drüfte ich mal fragen was der unterschied zwischen ";" und ":" ist? wann muss man ; nehmen und wann :? dachte ; is immer der abschluss für ne zeile?


Titel: *.php3 bei apache
Beitrag von: stonki am 15. November 2003, 13:53:33
Zitat von: "InFlame"
Zitat von: "stonki"
Zitat von: "InFlame"
"Parse error: parse error in /usr/local/httpd/htdocs/forumshow.php3 on line 76"
:(
tortzdem danke!


fuege mal in der while zeile ein ":" an:
http://uk2.php.net/manual/de/control-structures.while.php
tatsächlich... zeile 75 ist wohl in ordnung jetzt... jetzt meckert er über zeile 83... hehe ;)

aber.. hmmm... drüfte ich mal fragen was der unterschied zwischen ";" und ":" ist? wann muss man ; nehmen und wann :? dachte ; is immer der abschluss für ne zeile?


Ja, aber Du willst ja, dass alles von while... bis endwhile ausgefuehrt wird, also muss ein ":" dahin. Ich empfehle Dir eher statt endwhile das in { } zu setzen... Aber geschmackssache...

in zeile 83 (und noch paar zeilen tiefer) das gleich Problem. Da steht (if BLABLA) aber mit ";" am Ende das muss ein ":" sein

cu
stonki

So, das war es nun mit PHP Hilfe :)


Titel: *.php3 bei apache
Beitrag von: InFlame am 15. November 2003, 14:01:41
ach sooo... jetzt versteh ich...
also schließt ; das ganze ab, bei : heißts aber, das noch was kommt! interessant! danke :D

Zitat
So, das war es nun mit PHP Hilfe
echt? schade :( denn jetzt kommt der fehler:
Code:

Parse error: parse error, expecting `','' or `';'' in /usr/local/httpd/htdocs/forumshow.php3 on line 84


Titel: *.php3 bei apache
Beitrag von: InFlame am 15. November 2003, 14:10:46
ok, hat geklappt!
vielen dank!
nur kommen tortzdem weiter fehlermeldungen aber das werd ich schon regeln können ;)


Titel: *.php3 bei apache
Beitrag von: Wörsty am 15. November 2003, 21:41:58
:shock: Aha. Stonki macht auch mal einen Engelsgeduld-Thread auf :wink:
 :spannend)  :wait) Und? Geht's nun?


Titel: *.php3 bei apache
Beitrag von: InFlame am 16. November 2003, 01:16:32
Zitat von: "Wörsty"
Und? Geht's nun?
leider nein! kommt mit mysql noch nich klar... kommen dauernt fehler :(


Titel: *.php3 bei apache
Beitrag von: stonki am 16. November 2003, 02:24:04
Zitat von: "Wörsty"
:shock: Aha. Stonki macht auch mal einen Engelsgeduld-Thread auf :wink:
 :spannend)  :wait) Und? Geht's nun?


seit meiner "Bein" Geschichte (Du weisst) habe ich mir vorgenommen netter zu werden :)