Willkommen in der Webstatt Zum Webstatt Blog und Stories
M!m4$t3r M!m4$t3r am 22.04.06 19:44

hy,

hab mal ne Frage, hat einer von euch ein kleinen Script mit dem ich verschiedene Table Texte ändern kann d.h.


ich gebe in ein Formular verschiedene Daten ein und auf einer anderen Seite werden diese in Text Form wieder gegeben!?

Versteht ihr was ich meine?!

Ist bestimmt ganz einfach, aber ich hab absolut 0 Plan von PHP! :D

Bitte helft mir, Danke!!!

netcup.de Warum gibt es hier Werbung?
Al3x0r Al3x0r am 22.04.06 19:50

Willst du die eingegebenen Daten einfach nur anzeigen oder sollen die Daten dauerhaft gespeichert werden ?

ersteres wäre sowas.

<?php
if ($action) {
echo $nachricht;
}
?>
<form action="seite.php?action=true" method=post">
Nachricht:
<textarea name="nachricht"></textarea>
</form>

BNightSpeeder am 22.04.06 19:51

Ich glaube es soll dauerhaft gespeichert werde, dan musst du es über eine datenbank machen.. Oder du speicherst es in einer externen Datei (.txt)

M!m4$t3r M!m4$t3r am 23.04.06 11:04

Jo, will das das Dauerhaft gespeichert ist!

Habt ihr sowas auf Lager?! :rolleyes:

Julian am 23.04.06 11:15

Kommt drauf an was du nachher damit anstellen möchtest.
Wenn du nur einen Text speichern möchtest, bietet sich eine Variante mit *.txt-Datei an. Solltest du aber viele einzelne Daten speichern möchten, lohnt sich schon eine MySQL-Tabelle ...
Wofür brauchst du das denn?

M!m4$t3r M!m4$t3r am 23.04.06 11:54

Ich will eine kleine Memberliste erstelln wo jeder seine Spezifikationen eintragen kann (vom Auto)

Al3x0r Al3x0r am 23.04.06 12:06

Da hast du wie Julian schon sagte , die Möglichkeit eine Mysql Datenbank zu nehmen, du kannste es allerdings auch in einer Textdatei speichern.
Ist nur die Frage ünterstützt dein Anbieter Mysql ?

ne Mysql version wäre dann in etwa so.

<?php
if ($action) {
$query = mysql_query("INSER INTO deinetabelle (automarke, pferdestärken, hubraum) VALUES ('$automarke', '$pferdestärken', '$hubraum'") or die(mysql_error());
//nun folgt das Formular//
?>
<form action="deineseite.php?action=true" method="post">
<input type="text" name="automarke">
<input type="text" name="pferdestärken">
<input type="text" name="hubraum">
<input type="submit" value="und ab damit">
</form>


allerdings musst die sicherheitshalber noch Sachen einfügen, die beispielsweise html tags killen ([dok]htmlentities[/dok], [dok]htmlspecialchars[/dok]) oder dergleichen.
Ich denke der Code braucht nicht weiter kommentiert werden und ist selbsterklärend, falls doch fragen da sind einfach posten :D :D


mfg Alex

M!m4$t3r M!m4$t3r am 23.04.06 12:31

Naja, und wie lese ich die Daten nun Extern in einer php datei aus!?


(Ich hab nen root Server, mit Mysql, php .... mit ollen Schikonän ... ;))

bzw. wie funzt das Script überhaupt?

BNightSpeeder am 23.04.06 12:57

<?php
if ($action) {
$query = mysql_query("INSER INTO deinetabelle (automarke, pferdestärken, hubraum) VALUES ('$automarke', '$pferdestärken', '$hubraum'") or die(mysql_error());
//nun folgt das Formular//
?>
<form action="deineseite.php?action=true" method="post">
<input type="text" name="automarke">
<input type="text" name="pferdestärken">
<input type="text" name="hubraum">
</form>


In die drei eingabe felder (Automarke-PS-Hubraum) werden daten eingetragen.
Über den Submit Butten (Der hier fehlt) wird es an die selbe datei gesendet, um genauzusein an den php-Code der die daten die über die funktion "post" gesendet wurde in die datenbank einträgt.

Al3x0r Al3x0r am 23.04.06 13:25

Quote
Original von BNightSpeeder
<?php
if ($action) {
$query = mysql_query("INSER INTO deinetabelle (automarke, pferdestärken, hubraum) VALUES ('$automarke', '$pferdestärken', '$hubraum'") or die(mysql_error());
//nun folgt das Formular//
?>
<form action="deineseite.php?action=true" method="post">
<input type="text" name="automarke">
<input type="text" name="pferdestärken">
<input type="text" name="hubraum">
<input type="submit" value="und ab damit">
</form>


In die drei eingabe felder (Automarke-PS-Hubraum) werden daten eingetragen.
Über den Submit Butten (Der hier fehlt) wird es an die selbe datei gesendet, um genauzusein an den php-Code der die daten die über die funktion "post" gesendet wurde in die datenbank einträgt.


gefixt.

Ähm auslesen kannst du das zum Beispiel so...

<?php
$query = mysql_query("SELECT * FROM deine tabelle ORDER BY id") or die(mysql_error());
while ($row = mysql_fetch_object($query)) {
echo $row->automarke."<br>";
echo $row->pferdestärke."<br>";
echo $row->hubraum."<br>";
?>


Ich hoffe ich habe nichts vergessen :D

M!m4$t3r M!m4$t3r am 23.04.06 13:27

naja, ich muss ne MYSQL Datenbank erstellen, wa?

und wie ist es mit den "Automarke ..." muss ich die auch in der MYSQL erstellen?

Al3x0r Al3x0r am 23.04.06 13:53

So hier erstmal der Mysql Dumb:

-- phpMyAdmin SQL Dump
-- version 2.6.3-pl1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Erstellungszeit: 23. April 2006 um 13:40
-- Server Version: 4.1.13
-- PHP-Version: 5.0.4
--
-- Datenbank: `usr_web5_2`
--

-- --------------------------------------------------------

--
-- Tabellenstruktur für Tabelle `member`
--

CREATE TABLE `member` (
`id` int(5) NOT NULL auto_increment,
`hersteller` varchar(50) collate latin1_general_ci NOT NULL default '',
`model` varchar(255) collate latin1_general_ci NOT NULL default '',
`baujahr` int(4) NOT NULL default '0',
`motor` varchar(255) collate latin1_general_ci NOT NULL default '',
`hubraum` varchar(255) collate latin1_general_ci NOT NULL default '',
`ps` int(4) collate latin1_general_ci NOT NULL default '',
`antrieb` varchar(255) collate latin1_general_ci NOT NULL default '',
`0auf100` varchar(255) collate latin1_general_ci NOT NULL default '',
`vmax` varchar(255) collate latin1_general_ci NOT NULL default '',
`gewicht` varchar(255) collate latin1_general_ci NOT NULL default '',
`ausstattung` text collate latin1_general_ci NOT NULL,
`motorumbauten` varchar(255) collate latin1_general_ci NOT NULL default '',
`optikumbauten` varchar(255) collate latin1_general_ci NOT NULL default '',
`story` text collate latin1_general_ci NOT NULL default '',
`besonderheiten` varchar(255) collate latin1_general_ci NOT NULL default '',
`regdatum` varchar(255) collate latin1_general_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;

--
-- Daten für Tabelle `member`
--



in PHPmyAdmin auf SQL klicken und dort den obigen Text/Code einfügen.


Überprüfungen , die die Länge eines bestimmten Datensatzes betreffen müssen dann in PHP gemacht werden, da in Mysql bei manchen Punkten total überhöht viele Zeichen erlaubt sind.

Ausgabe.php

<?php
$query = mysql_query("SELECT * FROM `member` ORDER BY id") or die(mysql_error());
while ($row = mysql_fetch_object($query)) {
echo $row->hersteller."<br>";
echo $row->model."<br>";
echo $row->baujahr."<br>";
echo $row->motor."<br>";
echo $row->hubraum."<br>";
echo $row->ps."<br>";
echo $row->antrieb."<br>";
echo $row->0auf100."<br>";
echo $row->gewicht."<br>";
echo $row->ausstattung."<br>";
echo $row->motorumbauten."<br>";
echo $row->optikumbauten."<br>";
echo $row->story."<br>";
echo $row->besonderheiten."<br>";
echo $row->regdatum."<br>";
?>


eintragen.php

<?php
if ($action) {
$query = mysql_query("INSER INTO `member` (hersteller, model, baujahr, motor, hubraum, ps, antrieb, 0auf100, gewicht, aussattung, motorumbauten, optikumbauten, story, besonderheiten, regdatum) VALUES ('$hersteller', '$model', '$baujahr', '$motor', '$hubraum', '$ps', '$antrieb', '$0auf100', '$gewicht', '$aussattung', '$motorumbauten', '$optikumbauten', '$story', '$besonderheiten', regdatum") or die(mysql_error());
//nun folgt das Formular//
?>
<form action="eintragen.php?action=true" method="post">
<input type="text" name="hersteller"><br>
<input type="text" name="model"><br>
<input type="text" name="baujahr"><br>
<input type="text" name="motor"><br>
<input type="text" name="hubraum"><br>
<input type="text" name="ps"><br>
<input type="text" name="antrieb"><br>
<input type="text" name="0auf100"><br>
<input type="text" name="gewicht"><br>
<input type="text" name="ausstattung"><br>
<input type="text" name="motorumbauten"><br>
<input type="text" name="optikumbauten"><br>
<input type="text" name="story"><br>
<input type="text" name="besonderheiten"><br>
<input type="text" name="regdatum"><br>
</form>



Sollte im Grunde genommen so funktionieren. Wie gesagt, die Mysql Felder könnten intelligenter gewählt werden aber ich denke das kriegst du hin wenn du dich ein bisschen in Mysql einliest....

mfg Alex

M!m4$t3r M!m4$t3r am 23.04.06 16:33

Ich bekomm nen Fehler beim MYSQL dump:

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'collate latin1_general_ci NOT NULL default '',

Al3x0r Al3x0r am 23.04.06 18:17

Probier es mal so:


-- phpMyAdmin SQL Dump
-- version 2.6.3-pl1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Erstellungszeit: 23. April 2006 um 13:40
-- Server Version: 4.1.13
-- PHP-Version: 5.0.4
--
-- Datenbank: `usr_web5_2`
--

-- --------------------------------------------------------

--
-- Tabellenstruktur für Tabelle `member`
--

CREATE TABLE `member` (
`id` int(5) NOT NULL auto_increment,
`hersteller` varchar(50) collate latin1_general_ci NOT NULL default '',
`model` varchar(255) collate latin1_general_ci NOT NULL default '',
`baujahr` int(4) NOT NULL default '0',
`motor` varchar(255) collate latin1_general_ci NOT NULL default '',
`hubraum` varchar(255) collate latin1_general_ci NOT NULL default '',
`ps` int(4) NOT NULL default '',
`antrieb` varchar(255) collate latin1_general_ci NOT NULL default '',
`0auf100` varchar(255) collate latin1_general_ci NOT NULL default '',
`vmax` varchar(255) collate latin1_general_ci NOT NULL default '',
`gewicht` varchar(255) collate latin1_general_ci NOT NULL default '',
`ausstattung` text collate latin1_general_ci NOT NULL,
`motorumbauten` varchar(255) collate latin1_general_ci NOT NULL default '',
`optikumbauten` varchar(255) collate latin1_general_ci NOT NULL default '',
`story` text collate latin1_general_ci NOT NULL default '',
`besonderheiten` varchar(255) collate latin1_general_ci NOT NULL default '',
`regdatum` varchar(255) collate latin1_general_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;

--
-- Daten für Tabelle `member`
--

M!m4$t3r M!m4$t3r am 23.04.06 18:47

Wieder:

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'collate latin1_general_ci NOT NULL default '',

r0b1n r0b1n am 23.04.06 18:52

hm also ich hatte diesen Fehler auch. Haltet mich für dumm, aber bei mir lag es einfach daran, dass ich lokal mysql5 und auf dem webspace nur mysql4 hatte und dieses unterstützte irgendwie einige Befehle nicht. Vielleicht liegt es daran...

Al3x0r Al3x0r am 23.04.06 19:11

Quote
Original von M!m4$t3r
Wieder:

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'collate latin1_general_ci NOT NULL default '',



Habs gerade bei mir ausprobiert und es funktioniert einwandfrei.
Meine Mysql version:4.1.13

mfg Alex

M!m4$t3r M!m4$t3r am 23.04.06 19:40

MySQL 4.0.15 hab ich!

Sven Sven am 23.04.06 19:52

CREATE TABLE `member` (
`id` int(5) NOT NULL auto_increment,
`hersteller` varchar(50) NOT NULL default '',
`model` varchar(255) NOT NULL default '',
`baujahr` int(4) NOT NULL default '0',
`motor` varchar(255) NOT NULL default '',
`hubraum` varchar(255) NOT NULL default '',
`ps` int(4) NOT NULL default '',
`antrieb` varchar(255) NOT NULL default '',
`0auf100` varchar(255) NOT NULL default '',
`vmax` varchar(255) NOT NULL default '',
`gewicht` varchar(255) NOT NULL default '',
`ausstattung` text NOT NULL,
`motorumbauten` varchar(255) NOT NULL default '',
`optikumbauten` varchar(255) NOT NULL default '',
`story` text NOT NULL default '',
`besonderheiten` varchar(255) NOT NULL default '',
`regdatum` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM;


Probiers mal so

Al3x0r Al3x0r am 23.04.06 19:54

Dann schau doch einfach, dass du die Mysql Tabelle Manuel erstellst.

- Wenn du in deinem PHPmyAdmin bist wähle deine Tabelle aus.

- Im Hauptframe ist nun ein kleines Kästchen mit der Überschrift "Tabelle in Datenbank deineDatenbank erstellen"

- bei Tabllenname gibs du "member" ein und bei Felder "17"

gesagt getan. nun gehts weiter.

- das oberste Feld nennst du "id" (natürlich ohne "), der typ ist int(eger), Länge/Set auf 1, Extra auf auto increment, und dann wählst du bei den Radiobuttons den Primässchlüssel (Primary Key aus)

- Die anderen Felder kannst du auf "Varchar" lassen und tippst nun einfach die namen in die felder ein.

- Bei story und Ausstattung empfehle ich dir den Typ text.

- Bei den Varchar Feldern musst du immer eine Länge eingeben, falls dir diese egal ist kannst du einfach den maximalwert 255 eingeben...

dann auf Speichern

und fertig ist die Tabelle

noch fragen ?

mfg Alex

M!m4$t3r M!m4$t3r am 26.04.06 16:53

Parse error: parse error, unexpected T_LNUMBER, expecting T_STRING or T_VARIABLE or '{' or '$' in /srv/www/htdocs/web5/html/new/membercars/index.php on line 52

Wenn ich alles so eintrage kommt das, ich denke mal es liegt daran das niergend die Datenbank in der ausgabe.php definiert wird! also "usr_web5_2" oder so ...
Oder lieg ich da falsch?

und im Eintragen.phph kommt das:

Parse error: parse error, unexpected $ in /srv/www/htdocs/web5/html/new/membercars/adminprofil.php on line 22


Hiermal ein Code Auschnitt aus derAusgabe Datei:

...


<td>
<a href="http://forum.brf-net.de">
<img src="../images/index_07.jpg" width="110" height="22" border="0"></a></td>
<td colspan="2">
<img src="../images/index_08.jpg" width="308" height="22" alt=""></td>
<td rowspan="9" bgcolor="#192A36" valign="top">
<img src="../images/index_09.jpg" width="123" height="768" alt=""></td>
</tr>
<tr>
<td colspan="9">
<img src="../images/index_10.jpg" width="801" height="132" alt=""></td>
</tr>
<tr>
<td colspan="3" valign="top" background="images/index_18.jpg">
<img src="../images/index_11.jpg" width="158" height="28" alt=""></td>
<td colspan="5" rowspan="6" background="../images/index_12.jpg" valign="top">
<?php
$query = mysql_query("SELECT * FROM `member` ORDER BY id") or die(mysql_error());
while ($row = mysql_fetch_object($query)) {
echo $row->hersteller."<br>";
echo $row->model."<br>";
echo $row->baujahr."<br>";
echo $row->motor."<br>";
echo $row->hubraum."<br>";
echo $row->ps."<br>";
echo $row->antrieb."<br>";
echo $row->0auf100."<br>";
echo $row->gewicht."<br>";
echo $row->ausstattung."<br>";
echo $row->motorumbauten."<br>";
echo $row->optikumbauten."<br>";
echo $row->story."<br>";
echo $row->besonderheiten."<br>";
echo $row->regdatum."<br>";
?>
<? include("listpics.php") ?> <a style="text-decoration: none; font-size: 10pt; font-family: Arial" href="hoch.php"><img border="0" src="bu.gif" alt=""><a/></td>
<td valign="top" background="../images/index_15.jpg">
<img src="../images/index_13.jpg" width="158" height="28" alt=""></td>
</tr>
<tr>
<td colspan="3" background="../images/index_14.jpg" valign="top">
<p style="margin-top: 0; margin-bottom: 0">
<font face="Arial" size="2">&nbsp;
<a style="text-decoration: none; font-family: Arial; font-size: 10pt" href="../index.php">
<font color="

...

Al3x0r Al3x0r am 26.04.06 16:59

Einmal die Index.php


<?php
$query = mysql_query("SELECT * FROM `member` ORDER BY id") or die(mysql_error());
while ($row = mysql_fetch_object($query)) {
echo $row->hersteller."<br>";
echo $row->model."<br>";
echo $row->baujahr."<br>";
echo $row->motor."<br>";
echo $row->hubraum."<br>";
echo $row->ps."<br>";
echo $row->antrieb."<br>";
echo $row->nullaufhundert."<br>";
echo $row->gewicht."<br>";
echo $row->ausstattung."<br>";
echo $row->motorumbauten."<br>";
echo $row->optikumbauten."<br>";
echo $row->story."<br>";
echo $row->besonderheiten."<br>";
echo $row->regdatum."<br>";
}
echo "<br>";
include("listpics.php") ?>


und die adminprofil.php

<?php
if ($action) {
$query = mysql_query("INSER INTO `member` (hersteller, model, baujahr, motor, hubraum, ps, antrieb, nullaufhundert, gewicht, aussattung, motorumbauten, optikumbauten, story, besonderheiten, regdatum) VALUES ('$hersteller', '$model', '$baujahr', '$motor', '$hubraum', '$ps', '$antrieb', '$nullaufhundert', '$gewicht', '$aussattung', '$motorumbauten', '$optikumbauten', '$story', '$besonderheiten', regdatum") or die(mysql_error());
}
//nun folgt das Formular//
?>
<form action="adminprofil.php?action=true" method="post">
<input type="text" name="hersteller"><br>
<input type="text" name="model"><br>
<input type="text" name="baujahr"><br>
<input type="text" name="motor"><br>
<input type="text" name="hubraum"><br>
<input type="text" name="ps"><br>
<input type="text" name="antrieb"><br>
<input type="text" name="nullaufhundert"><br>
<input type="text" name="gewicht"><br>
<input type="text" name="ausstattung"><br>
<input type="text" name="motorumbauten"><br>
<input type="text" name="optikumbauten"><br>
<input type="text" name="story"><br>
<input type="text" name="besonderheiten"><br>
<input type="text" name="regdatum"><br>
</form>


beschränk habe ich mich auf ausschließlich den PHP Teil, da sonst mein Beitrag zu lang geworden wäre.

hoffentlich funzt nun alles

mfg Alex

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt