Inhalt einer Textbox verändern

PHP, Ajax, CSS, HTML, Javascript
Eben für die wirklich Harten, die alles selber machen.
Antworten
diggler
Beiträge: 5
Registriert: Mo 13.Mär, 2006 14:49

Inhalt einer Textbox verändern

Beitrag von diggler »

Hallo,
ich habe ein kleines oder großes Problem, bin noch nicht so richtig fit in php, aber möchte jetzt gerne folgendes realisieren:

ich habe eine webseite in der text in einer textbox dargestellt wird.
unterhalb dieser textbox soll sich ein login befinden.
wenn ich mich einlogge, soll ich den inhalt dieser textbox verändern und speichern können,
so dass sich beim nächsten seiten aufruf den "neuen" Inhalt auf dieser Seite finde.


der text muss nicht unbedingt innerhalb einer textbox sein, ich denke aber, dass es sich mit so einer aber besser realisieren läßt.
es würde auch genügen text auf einer seite zu haben und den nach einem login veränden zu verkönnen.

hab aber leider keinen plan, wie ich das realisieren kann und bin noch nicht so wirklich im progen fit, brauch also wirklich hilfe....
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Öhm, jetzt bin auch ich überfragt, was Du überhaupt erreichen willst???
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
diggler
Beiträge: 5
Registriert: Mo 13.Mär, 2006 14:49

Beitrag von diggler »

ok, ich versuche jetzt mal mich etwas deutlicher auszudrücken und das Problem genauer zu beschreiben.

Ich mache eine website für ein gasthof , in dieser ist eine Seite enthalten, in welcher er seine Übernachtungspreise hat.
Diese preise will er an und zu ändern können, ohne im quelltext rumzuschreiben....



also habe ich mir gedacht, mache ich einfach eine box oder ähnliches in welcher der komplette text steht so in der art halt:


einzelzimmer 15 €
doppelzimmer 23 €


wenn er sich nun einloggt,
dann kann er in die box schreiben und ändert somit die preise z.b.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Verwendest Du rein HTML oder auch PHP, bzw. ein phpBB?
Bei letzterem könntest Du das ezPortal (oder jedes andere Portal auch - bevor mich jetzt noch jemand schlägt ;) ) verwenden und entsprechend anpassen.
Gerade das ezPortal in Verbindung mit den Portal Admin MOD bietet eine HTML-Box, die bequem per ACP verwaltet und damit geändert werden kann...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
diggler
Beiträge: 5
Registriert: Mo 13.Mär, 2006 14:49

Beitrag von diggler »

ja bis jetzt ist es noch in html , aber für die Preis seite werde ich wohl php hernehmen.

hab aber jetzt noch nen anderen ansatz der auch nicht schlecht wäre:

ich mach die seite ganz normal in html,
ein php login, mit welchem man auf ne php seite kommt, in der z.b. so ein formular ist:

Code: Alles auswählen

<form method="post" id="übernachtungspreis" action="preis.php" onsubmit="return checksubmit()">
     <fieldset style="border: 1px solid silver;line-height:15px;padding:10px;margin:5px 20px;">

        <legend style="font-size: small"> Füllen Sie bitte alle Felder aus und drücken Sie auf "Absenden". </legend>
        <table border="0" style="text-align:left;">

        <tr>
        <td width="150"><label for="ubmf">Übernachtung mit Frühstück</label></td>
        <td><input id="ubmf" type="text" name="bd" size="4" maxlength="4" value="0,00" /> €</td>
        </tr>

        <tr>
        <td><label for="hp">Halbpension</label></td>
        <td><input id="hp" type="text" name="d" size="4" maxlength="4" value="0,00" /> €</td>
        </tr>

        <tr>
        <td><label for="vp">Vollpension</label></td>
        <td><input id="vp" type="text" name="nb" size="4" maxlength="4" value="0,00" /> €</td>
        </tr>

        <tr>
        <td><label for="ez">Einzelzimmerzuschlag</label></td>
        <td><input id="ez" type="text" name="sb" size="4" maxlength="4" value="0,00" /> €</td>
        </tr>

        <tr>
        <td><label for="gb">Gemeindl. Gästebeitrag</label></td>
        <td><input id="gb" type="text" name="spb" size="4" maxlength="4" value="0,00" /> €</td>
        </tr>

        <tr>
        <td><input id="absenden" type="submit" name="absenden" value="Absenden" /></td>
        <td><input id="reset" type="reset" value="Löschen" name="zurückstellen" /></td>
        </tr>
        </table>
    </fieldset>
    </form>
und er dort die preise ändern kann.


hm, dann brauch ich halt noch die "preis.php" mit welcher ich die daten vom formular speicher und nen befehl mit dem ich die daten auslese in der html seite wo die preise sind.


wie mache ich , dass mir dann der vollpensions preis , der die id vp hat angezeigt wird?
einfach mit <div id="vp"></div> oder so?
oder irgendwie mit <? include .... ?> weils in html nicht geht...

wie sieht die preis.php datei aus?
hat da jemand was bereits fertiges zur hand, das mir txt aufm server speichert? das ich nur ein wenig modifizieren muss?
ich hab jetzt nur was da, was mir daten verschickt, ohne zu speichern....
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

PHP-Grundkurs für Anfänger:

Aufgerufen wird immer die PHP-Datei, also z. B. preis.php.
Diese verbindet sich mit der Datenbank (Oder auch mit einem phpBB, sofern vorhanden), fragt die Daten ab und übergibt diese per "echo" an eine Seite.
Diese Seite kann eine eingebundene Template-Datei sein oder auch nicht, dann wäre aber die Seite komplett neu zu erstellten.

Um nun in Deinem Falle eine HTML-Seite in ein PHP-Script umzuwandeln, füge dort, wo PHP arbeiten soll einfach immer folgendes ein:

Code: Alles auswählen

<? PHP

// PHP-Code

?>
Davor und danach ist es einfach die HTML-Seite, innerhalb des Blocks PHP. Und genau das macht z. B. auch der eXtreme Styles MOD: Er erstellt aus Shript und Template eine Datei, die dann nur noch Inhalte abfragt, bearbeitet und darstellt.
Wenn Du den XS MOD installiert hast, dann schau Dir einfach als Beispiele eine x-beliebige Datei im Order cache/ an, um besser zu verstehen, wie dort PHP-Code eingebettet wird...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
diggler
Beiträge: 5
Registriert: Mo 13.Mär, 2006 14:49

Beitrag von diggler »

Ich danke dir schon mal für deine antwort, aber so ganz zufrieden bin ich da jetzt noch nicht,
dass dann die preis.php datei aufgerufen wird, dass ist mir schon klar, und auch mit der einbettung von php in html ist auch klar.
hier ist mal ein bsp, wo ich halt daten verschicke mit php
Beispiel

mir ist es also auch klar, dass ich mit submit vom formular auf php komme (wo ich halt auch reinschreiben kann, "ihre daten wurden aktualisiert" usw usw, und zeitgleich halt im hintergrund die definierten funktionen vom php ablaufen (im Beispiel halt die Daten versendt werden)

bloß, wie muss das ganze aussehen, wenn ich die daten anstatt versende in nem ordner auf meinem webspace speichern will????

ich poste mal den kompletten code, der im bsp halt dann die daten verschickt und ne "bedankung anzeigt" ----
wenn ihr mir die sachen, oder stellen sagen könntet, die ich halt dann beispielhaft ausbessern müßte, so dass die anmeldedaten gespeichert anstatt versendet werden, wäre super nett.....

Code: Alles auswählen

<?php


//daten sammeln.....

$mail = htmlspecialchars($HTTP_POST_VARS['mail']);
$name = htmlspecialchars($HTTP_POST_VARS['name']);
$regatta =  htmlspecialchars($HTTP_POST_VARS['regatta']);
$boot =  htmlspecialchars($HTTP_POST_VARS['boot']);
$postalcode =  htmlspecialchars($HTTP_POST_VARS['postalcode']);
$ort =  htmlspecialchars($HTTP_POST_VARS['ort']);
$segelnummer =  htmlspecialchars($HTTP_POST_VARS['segelnummer']);
$strasse =  htmlspecialchars($HTTP_POST_VARS['strasse']);
$wunsch =  htmlspecialchars($HTTP_POST_VARS['wunsch']);



 // Zuerst wird der Text zusammengesetzt den der Kunde erh&auml;lt
  $text = "Hallo $name . \n Wir haben Ihre Online Anmeldung erhalten. \n Wir freuen uns dich zum/zur $regatta begrußen zu konnen. \n
     Mast und Schotbruch wunscht dir die Seglervereinigung-Vilstal.\n
     \n\n\n\n\n
     Auflistung Ihrer Daten zur Kontrolle: \n
	Bootstyp: $boot\n
	Regatta: $regatta \n
	Name: $name
	Straße: $strasse\n
	Postleitzahl: $postalcode \n
	Ort: $ort \n 
	Segelnummer: $segelnummer \n
	Fragen, Wünsche : $wunsch \n \n\n\n\n\n\n 

" ;


function mail_senden($name, $mail, $text)
{

// Zus&auml;tzlich wird noch der Header f&uuml;r email definiert
     $header = "From: \"seglervereinigung-vilstal.de\" <webmaster@seglervereinigung-vilstal.de>" ;
     mail($mail, "Regatta-anmeldung", $text, $header) ;
}



// Daten des ausgef&uuml;llten Formulars an Webmaster schicken
// erstmal die Daten sammeln....
 $to = "diggler64@hotmail.de";

  
  $message = " Hi Webmaster, \n

  Regatta Anmeldung erhalten von $name \n
  Email-Adresse des Seglers: $mail \n
   Adresse: \n
   Stra&szlig;e und Hausnummer: $strasse  \n
   Postleitzahl: $postalcode \n
   Ort: $ort \n
   Er kommt mit folgendem Boot: $boot \n
   Zu folgender Regatta:
   $regatta   \n
   Es wurden folgende Anmerkungen gemacht: \n
   $wunsch \n\n\n\n\n\n\n\n\n\n\n\n
     ";


 function mail_to_webmaster($name, $to, $message )
 {

    // Header definiert und email zusammengesetzt:
 $header = "From: \"Regatta-anmeldung\" <webmaster@seglervereinigung-vilstal.de>" ;
 mail($to , "Regatta Anmeldung", $message, $header) ;
    }        // Funktion mail_to_webmaster() zu Ende


 ?>


<?php
//}

function fehler() {
 //Keine PHP-Befehle erforderlich ?>

<h1>Fehlende Eingabe !</h1><br>
<a href="javascript:history.back();">Zur&uuml;ck</a>

<?php
} // Funktion fehler() zu Ende

?>









<html>
<head>
 <title>Anmeldung erfolgreich</title>

<!-- ################################## -->
<link rel="stylesheet" type="text/css" href="http://www.der-diggler.de/SVV/NewDesign/menucss.css">
<style>
#menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#menu li { /* all list items */
	float: left;
	position: relative;
	width: 8em;
}

#menu li ul {/* second-level lists */
	position: absolute;
	display: block; 
	top: 2em;
    left: 0;
}

#menu li>ul {/* to override top and left in browsers other than IE */
	top: auto;
	left: auto;
}

/* Fix IE. Hide from IE Mac \*/
* html #menu ul li { float: left; height: 1%; }
* html #menu ul li a { height: 1%; }
/* End */

#menu li:hover ul { display: block; }

#menu li:hover>ul { visibility:visible; }

#menu ul ul { visibility:hidden; }		

/* Make-up syles */
#menu ul, li {
    margin: 0 0 0 0; 
}

/* Styles for Menu Items */
#menu ul a {
	display: block;
	text-decoration: none;
	color: #777;
	background: #fff; /* IE6 Bug */
	padding: 5px;
	border: 1px solid #ccc;
}
/* Hover Styles */
#menu ul a:hover { 
	color: #FFFFFF; 
	background: #ACA899; 
} 

/* Sub Menu Styles */
#menu li ul a {
	text-decoration: none;
	color: #77F;
	background: #fff; /* IE6 Bug */
	border: 1px solid #ccc;
    padding: 5px; 
} 

/* Sub Menu Hover Styles */
#menu li ul a:hover { 
	color: #FFFFFF; 
	background: #ACA899; 
} 

/* Icon Styles */
#menu li a.submenu {background:#fff url("v_arrow.gif") no-repeat right; }
#menu li a.submenu:hover {background:#ACA899 url("http://www.der-diggler.de/SVV/NewDesign/HcSmall.gif") no-repeat right;}
#menu li ul a.submenu {background:#fff url("r_arrow.gif") no-repeat right;}
#menu li ul a.submenu:hover {background:#f9f9f9 url("http://www.der-diggler.de/SVV/NewDesign/HcSmall.gif") no-repeat right;}
</STYLE>

<script>
startList = function() {

	//code only for IE
	if(!document.body.currentStyle) return;
	var subs = document.getElementsByName('submenu');
	for(var i=0; i<subs.length; i++) {
		var li = subs[i].parentNode;
		if(li && li.lastChild.style) {
			li.onmouseover = function() {
				this.lastChild.style.visibility = 'visible';
			}
			li.onmouseout = function() {
				this.lastChild.style.visibility = 'hidden';
			}
		}
	}
}
window.onload=startList;
</script>

<!-- ################################## -->

</head>

<body>


<?php

// Eigentlicher Kern des Skripts
if ( empty($name) || empty($mail) ) {
 fehler() ;
} else {
 mail_senden($name, $mail, $text);
 mail_to_webmaster($name, $to , $message );
}

?>


<body bgcolor="#FFFFFF">

<table >
<tr>
<td style="background-image:url(http://www.seglervereinigung-vilstal.de/NewBg5.jpg)" width="1000" height="550" boder="0">


      <div id="Layer1" style="position:absolute; left:12px; top:102px; width:936px; height:29px; z-index:0"> 

<!-- ######################### -->

<div id="menu">
  <ul id="menuList">
    
    <li><a class="submenu" href="http://www.seglervereinigung-vilstal.de" name="submenu">Startseite</a>

    
    <li><a class="submenu" href="http://www.der-diggler.de/SVV/NewDesign/news2006.htm" name="submenu">News</a>
    

    <li><a class="submenu" href="http://www.der-diggler.de/SVV/NewDesign/termine2006.htm" name="submenu">Termine</a>
    
    
    <li><a class="submenu" href="http://www.der-diggler.de/SVV/NewDesign/anmeldung2006.htm" name="submenu">Online-Anmeldung</a>
    
    
    <li><a class="submenu" href="http://www.der-diggler.de/SVV/NewDesign/anfahrt2006.htm" name="submenu">Lageplan</a>
    

    <li><a class="submenu" href="?menu_id=5" name="submenu">Bilder</a>
    <ul>

      
      <li><a href="http://www.seglervereinigung-vilstal.de/photos.htm#Photos">2005</a>
      <li><a href="http://www.der-diggler.de/SVV/NewDesign/bilder2006.htm">2006</a>
      
      </li>
    </ul>
	
    
    <li><a class="submenu" href="http://www.der-diggler.de/SVV/NewDesign/gast2006.htm" name="submenu">Gästebuch</a>

 
  </ul>

</div>



<div id="Layer2" style="position:absolute; left:42px; top:133px; width:933px; height:355px; z-index:1"> 
  <div align="center">
    <p><font size="5"><i>
<h1>Die Anmeldung wurde erfolgreich verschickt.</h1><br>
  Es wurden folgende Daten übermittelt: <?php
   echo"$name";?>
<br>
     <?php
    echo "$regatta";?>
<br>
    <?php echo"$boot";?>
<br>
    <?php echo "$strasse";?>
<br>
    Postleitzahl:<?php echo "$postalcode";?>
<br>
   Ort: <?php echo "$ort";?>

    
 <br>     <br> <br>


 </i></font></p>
    <p><font size="4" color="#CCFFFF"><b><font color="#FFFFFF"><i><font size="5"> 
      </font></i></font></b></font></p>
    </div>
  </div>
<p>&nbsp;</p>
</td></tr></table>
</body>
</html>

ich hoffe mal es ist ok, so lange codes zu posten.....
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

ich hoffe mal es ist ok, so lange codes zu posten.....
Nein.

Zur Sache:
Das was Du angehangen hast, ist ein Email des Inhalts irgendwo hin.
Wenn Du auf dem Webspace was ablegen willst, musst Du eine Datei mit fopen(); öffnen und den gewünschten Inhalt mit fwrite(); dort reinschreiben. Ein fclose(); darf dann am Schluss natürlich nicht fehlen...

Auch kann man den Inhalt dann einfach wieder auslesen.
Aber abgelegt als PHP-Datei (die man ja auch per Script auf die gleiche Weise erstellen kann), bringt ein einfaches include dieser Datei alle Datei sofort und bequem zurück ins Script, um sie anzuzeigen oder zu bearbeiten...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
diggler
Beiträge: 5
Registriert: Mo 13.Mär, 2006 14:49

Beitrag von diggler »

ok, danke das hilft mir jetzt erstmal weiter, weil ich über das fopen schon mal gestoßen bin, werde mich da dann mal ein wenig selber weiter versuchen und bescheid sagen, obs geklappt hat.

danke schon mal bis dann...
Antworten