Übergabe von Eingabewerten in einer Textarea zu einer Variablen in einem PHP Skript

xorlor

Grünschnabel
Hallo Leute,

Ich habe folgendes Problem zu lösen und komme nicht weiter.
Also vorab info:
Ich benutze ein Templatesystem für meine php / html skripts welches durch Smarty erstellt wurde.
Nun habe Ich folgendes Problem in der Datei index.tpl wo meine ganzen html 'objekte' erzeugt werden habe ich beispielsweise diesen Code hier:

HTML:
<textarea name="textarea_1" id="txt_area1"></textarea>

Dadurch wird eine Textarea erzeugt in der der Benutzer halt etwas schreiben kann nun möchte Ich die eingegebenen Werte an eine Variable übergeben die in einer anderen Datei steht.
Durch klicken dieses Buttons soll die Variable damit gefüllt werden oder die Werte sollen übergeben werden:
HTML:
<input type="submit" name="uploadbutton" id="uploadbutton" value="Upload">

In der Datei die die Werte empfangen wird sieht der Code wie folgt aus:

PHP:
class DiscriptionForm extends AbstractForm 
{
	public function discription_one() {
		$discription_one = $_POST['textarea_1'];
		$qry_discription_one = "INSERT INTO SQL_DB_NAME(textarea_1) VALUE($discription_one)";
		if(mysql_query($qry_discription_one))
		{
		echo $discription_one;
		}
			else{
				echo "Attempt failed please read Insruction";
			}
	}
}

Ich weiß absolut nicht wie Ich das realisieren soll, habe überall rumgegoogelt und gesucht aber bin nirgendswo auf etwas nützliches gestoßen ...

Ich wäre dankbar wenn mir jemand helfen könnte.

Gruß
Chris
 
Zeurst einmal mit var_dump($discription_one); prüfen ob der Inhalt da ist.
Wennja, im SQL den Inhalt nocht mit ' umgeben
PHP:
$qry_discription_one = "INSERT INTO SQL_DB_NAME(textarea_1) VALUE('{$discription_one}')";

Wenn du weitere Fehler in SQL-Statements suchen musst, hier ein tutorial
PHP MySQL Debug Queries
 
Ich bin nicht sicher, ob ich die Frage richtig verstehe. Wenn yaslaw die Lösung hat, würde ich sie noch folgendermaßen modifizieren wollen:
PHP:
$discription_one = mysql_real_escape_string($_POST['textarea_1']); 
$qry_discription_one = "INSERT INTO SQL_DB_NAME(textarea_1) VALUE('$discription_one')";
 
Zuletzt bearbeitet:
Danke schon einmal für eure Antworten!

Ich habe eine kleine Zwischenfrage mit dem 'submit'-Button versucht er doch die Daten zu übergeben irgendwo hin und dann sieht er ahhh da ist ein $_Post was es in eine Variable füllt sozusagen und es dann sofort der Datenbank übergibt oder sehe Ich das falsch?

Gruß
Chris
 
Das siehsr du falsch.
Es wird der DB übergeben falls eine Instanz der Klasse DiscriptionForm angelegt wurde und dann die Methode discription_one() der Instanz aufgerufen wird. Ansonsten machts da gar nichts.

zudem wird $_POST nur dann abgefüllt, wenn im form-Tag des Formulars die methode 'POST' ausgewählt wurde.
 
Ist der Fall also im Form-Tag habe Ich die Methode Post erwähnt
HTML:
<form action="/?action=PicAction.class.php" method="post" name="dataupload" enctype="multipart/form-data">

Jedoch weiß Ich nicht wie Ich die die function mit dem 'submit'-Button in Verbindung bringen soll.
Wie meinst du das wenn eine Instanz der Klasse DiscriptionForm angelegt wurde und dann die Methode discription_one() der Instanz aufgerufen wird, verstehe gerade nicht ganz genau was du mir erklären möchtest ;)

Gruß
Chris
 
PHP:
if(isset($_POST['uploadbutton'])){
    $dform = new DiscriptionForm();
    $dform->discription_one();
}

Aber mach dich mal mit Klassen und Objekten vertraut. ansonsten ruderst du da in Zukunft immer irgendwie hilflos herum.
 
Danke dir für deinen Tipp werde Ich mir heute als Hauptaufgabe nehmen mich mit Klassen und Objekten vertraut zu machen es nahtlos zu verstehen, dann werde Ich erst den Part benutzen den du mir gegeben hast.
Ich danke dir vielmals yaslaw.

Gruß
Christian
 
Zurück