PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : frage zu php



tonne
15.02.2004, 21:54
he, so, ich habe nun was mit php gemacht, und wollte die function auf klick aktivieren..... ich wollte ma fragen, ob es bei php einen ähnlichen befehl, wie bei javascript, eine art onclick gibt....
danke im voraus....

Chocwise
15.02.2004, 22:15
Hmh... mich deucht, du hast das System von PHP noch nicht verstanden. :D

Zum Basisverständnis:
PHP wird vom Server ausgeführt, nicht, wie JavaScript vom Browser des Clients.
Der Client fordert beim Server eine .php-Page an, dieser parsed (bearbeitet den PHP-Code) diese dann und gibt nur die Ausgabe an den Client weiter, nicht den Scriptcode.

Vorraussetzung das ein Server den PHP-Code parsen kann: Der Server muss das PHP-Modul installiert haben, Die PHP-Page muss, zumindest bei Apache als Webserversoftware, über den Apache aufgerufen werden.
Du musst also einen Webserver zur Hand haben der das PHP-Modul installiert hat.
Du kannst es dir natürlich schwer machen und dir einen eigenen Webserver auf deinem PC aufsetzen oder du besorgst dir einen Host.
Da gibt es kostenlose aber auch kostenpflichtige. Ich kenn mich da allerdings nicht mehr so aus, weil ich hier ja gewissermaßen auf 4 Servern sitze (5 mit meinem eigenen WAMPP).

Alles was du also tun musst um eine Funktion zu "aktivieren", ist die .php-Seite, welche auf einem Webserver liegt, über deinen Browser aufzurufen. Eine PHP-Datei die irgendwo auf deiner Festplatte liegt per "Öffnen..." in den Browser reinladen, bringt absolut nichts.


Bei spezifischeren Fragen, frag nochmal nach.
Poste dabei dann am Besten auch gleich den Code deines Scripts dazu. Dafür kannst du den
-Tag benutzen.

tonne
15.02.2004, 22:27
Original geschrieben von Chocwise
Hmh... mich deucht, du hast das System von PHP noch nicht verstanden. :D

hab auch n scheiß buch... da wird kaum was erklärt.... muss ich wohl so lernen :(
aba das was du da erklärt hast, wusste ich schon vorher.... stand aba auch nicht in diesem scheiß buch....
naja...
ich wollte n gästebuch machen....
also habe ich n formular erstellt, und wollte dann die entragungen inna txt datei speichern, und das dann wieder aufrufen.... schön ung gut... aba ich weiss nciht wie ich das speichern soll....
hier ma n bsp:
<?
echo "
<input type="text" name="sonstwas">
";
$datei=fopen("name.txt", "a+");
fputs($datei eintrag von:$sonstwas");
fclose($datei);
?>

naja, hab' ich mir gerade ausgedacht ;)
aba so habe ich es mir vorgestellt, aba nun wir das nciht gespeichert.... also dachte ich mir "mensch, da wird es doch bestimmt son ähnlichen befehl wie "onclick" geben"
wie soll ich das denn nun machen????

Chocwise
15.02.2004, 22:32
Original geschrieben von tonne
hab auch n scheiß buch... da wird kaum was erklärt.... muss ich wohl so lernen :(
aba das was du da erklärt hast, wusste ich schon vorher.... stand aba auch nicht in diesem scheiß buch....
naja...
ich wollte n gästebuch machen....
also habe ich n formular erstellt, und wollte dann die entragungen inna txt datei speichern, und das dann wieder aufrufen.... schön ung gut... aba ich weiss nciht wie ich das speichern soll....
hier ma n bsp:
<?
echo "
<input type="text" name="sonstwas">
";
$datei=fopen("name.txt", "a+");
fputs($datei eintrag von:$sonstwas");
fclose($datei);
?>

naja, hab' ich mir gerade ausgedacht ;)
aba so habe ich es mir vorgestellt, aba nun wir das nciht gespeichert.... also dachte ich mir "mensch, da wird es doch bestimmt son ähnlichen befehl wie "onclick" geben"
wie soll ich das denn nun machen????
Oh, ich seh schon. Du stehst noch ganz am Anfang.
Hmja...
*kratzambart*
Wie mach'n wa des nu?
Pass op, ich schick dir mal meine MSN-Addy per PN (nicht weitergeben), wenn du Lust hast, erklär ich dir das "eben fix".
Nunja, es gibt dabei einige Einzelheiten zu beachten, deswegen wäre es ungünstig das hier im Thread zu regeln.

Das Angebot gilt allerdings vorerst nur für heute,w eil ich nicht absehen kann ob ich die Tage Zeit finden werde. ;)

Ineluki
16.02.2004, 06:06
ich weiss nicht, ob choci dir das schon erklaert hat, aber du koenntest das folgender massen machen ...

Das Formular, in dem deine Eingabetextbox ist stattest du mit der POST Methode aus (hoffe, das stimmt so), und die seite, an die die daten gesendet werden sollen, ist dann das PHP script, welches die uebergegebenen Parameter auswertet und dann in die textdatei speichert. Wen das geschehen ist, leitet dich die Seite automatisch weiter auf die Seite zum anzeigen der Textdatei, sprich dein Gaestebuch.

Gruss Ineluki

tonne
17.02.2004, 00:40
also, chocwise hat mir nun mehr oda weniger geholfen....
ich habe den code nun nur noch verändert:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">

<form name="form1" method="post" action="/tepbilder/blahblah2.php
<table border="0" width="100%">
<tr>
<td width="10%">Name:</td>
<td width="90%"><input type="text" name="name"</td>
</tr>
<tr>
<td width="10%">E-Mail:</td>
<td width="90%"><input type="text" name="mail"</td>
</tr>
<tr>
<td width="10%">Homepage:</td>
<td width="90%"><input type="text" name="hp"</td>
</tr>
</tr>
<tr>
<td width="10%">Titel</td>
<td width="90%"><input type="text" name="titel"</td>
</tr>
<tr>
<td width="10%" valign="top">Text:</td>
<td width="90%"><textarea rows="5" name="S1" cols="23"></textarea></td>
</tr>
</table>
<input type="submit" name="abschicken" value="Abschicken">
</table>
</form>

</body>
</html>


so, nun habe ich zwei probs:
1. problem: der table teag will nicht funzen(KA warum...)
2. Problem: wenn man nun auf "abschicken" klickt, wird man weitergeleitet, und es wird gesagt, das "diese seite nicht existiert"
naja, hoffe wieda auf hilfe ;)

Dingsi
17.02.2004, 03:34
Öhm. Dieser Code am Ende... ist von Tripod angefügt?! Naja.. egal.

Auch wenns jetzt ein bisschen kurz ist:
Dein form-Tag ist nicht richtig geschlossen:

<form name="form1" method="post" action="/tepbilder/blahblah2.php">

Chocwise
17.02.2004, 04:46
Original geschrieben von tonne
also, chocwise hat mir nun mehr oda weniger geholfen....
ich habe den code nun nur noch verändert:
...

so, nun habe ich zwei probs:
1. problem: der table teag will nicht funzen(KA warum...)
2. Problem: wenn man nun auf "abschicken" klickt, wird man weitergeleitet, und es wird gesagt, das "diese seite nicht existiert"
naja, hoffe wieda auf hilfe ;)

"Mehr oder weniger"?!
Du Sack! Wenn du dich nicht auf halbem Weg dünne gemacht hättest, hätt ich dich schon noch weiter gebracht. :D:p

BTW: Hab den Code mal verkürzt. Der ganze Lycos-Werbemurks muss ja net dabeisein. :\

@ 1.&2.: Leckmichannefutt, da fehlt ja Einiges. :D
Hab den korregierten Code mal unten ans Posting drangehängt.

Du hast einfach jede menge Tagbeendende ">"'s vergessen und irgendwo war AFAIR auch ein </tr> zu viel.

Weshalb nach dem Absenden nur ein 404'er auftaucht liegt wohl daran das du in der Formaction eine falsche relative Adresse eingetragen hast.
Ich weiß zwar nicht inwiefern du die Struktur des ganzen geändert hast, aber wenn du dieses Formular im selben Ordner liegen hast wie das Script, dann reicht es den Dateinamen des Scripts im Formaction einzutragen. Ist es gar die selbe Datei wie ich es dir Programmiert hab, dann bist du mit <?php echo"$PHP_SELF"; ?> sehr gut bedient.

BTW: Saug dir mal das PHP-Manual und schmöker darin etwas herum:
http://www.php.net/download-docs.php
Ich empfehle die deutsche chm-Version.


<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">

<form name="form1" method="post" action="blahblah2.php">
<table border="0" width="100%">
<tr>
<td width="10%">Name:</td>
<td width="90%"><input type="text" name="name"></td>
</tr>
<tr>
<td width="10%">E-Mail:</td>
<td width="90%"><input type="text" name="mail"></td>
</tr>
<tr>
<td width="10%">Homepage:</td>
<td width="90%"><input type="text" name="hp"></td>
</tr>
<tr>
<td width="10%">Titel</td>
<td width="90%"><input type="text" name="titel"></td>
</tr>
<tr>
<td width="10%" valign="top">Text:</td>
<td width="90%"><textarea rows="5" name="S1" cols="23"></textarea></td>
</tr>
</table>
<input type="submit" name="abschicken" value="Abschicken">
</form>
</body>
</html>

tonne
18.02.2004, 01:30
so, das it _php-self wollte ich garnicht ändern... hatt wohl weaversalve gemacht....
naja....:confused:
also, ich steige da nirgents durch... :(
lese mir das mal nachher durch....

Chocwise
18.02.2004, 04:53
Original geschrieben von tonne
so, das it _php-self wollte ich garnicht ändern... hatt wohl weaversalve gemacht....
naja....:confused:
also, ich steige da nirgents durch... :(
lese mir das mal nachher durch....
Dann fehlt dir Basiswissen was dir die Kollegen hier im Forum nicht mal so eben vermitteln können.
Da heißt es: Tutorials lesen, googlen, Manuals lesen, googlen, rumprobieren, googlen, Tutorials lesen, Manuals lesen, googlen, rumprobieren, googlen, dann vielleicht mal was Spezifisches im Forum nachfragen und weiter lesen/probieren/googlen.

So hab ichs auch gemacht und irgendwie hats geklappt.

tonne
18.02.2004, 17:52
ich habe ja ein buch....
kannse mir ma den php code des scripts erklären????
vielleicht kapiere ich dann was....
ein bisschen kann ich ja....
werde mich aba noch erkundigen....

Remos
18.02.2004, 20:08
http://www.schattenbaum.net/php/

Da hab ich früher mal php gelernt.
Wen du nach den ganzen seiten immer noch nicht versthest probier weiter bis du den bogen raus hasst, einige haben 1 jahr gebraucht um php zu verstehen andere nur eine woche(ich weis ehrlich nicht woran das liegt).

Übrigens MySQL soltest du mal lernen mit um zu gehen, wen man erst mal weis wies geht macht MySQL richtig fun ;)

Meine empfelungen für die heim entwickungs workstation sind:

OmniHTTP ist php gleich mit dabei aber achtung du must noch eventuell die php config datei anpassen im windows verzeichnis, ansonsten völlig in ordnnung das teil.
CGI ist auch dabei ..

http://www.omnicron.ca

dan noch mysql datenbank www.mysql.com

Viel glück ^^

Chocwise
18.02.2004, 21:38
Original geschrieben von tonne
ich habe ja ein buch....
kannse mir ma den php code des scripts erklären????
vielleicht kapiere ich dann was....
ein bisschen kann ich ja....
werde mich aba noch erkundigen....
Ich hab das Script nicht mehr das ich dir mal geschrieben hab.
Das was du da oben gepostet hast, ist nur der Output nachdem der wirklich relevante Teil durch den Parser gejagt wurde.

tonne
20.02.2004, 00:02
@Remos: das wollte ich ja tun ich wollte ma n gb machen, weil es auch im buch stand(nur klappt es irgentwie nicht) und recht einfach aussah...
@chocwise: ich werde dir den code nochmal per pn geben...