php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.04.2005, 17:36  
Gast
 
Beiträge: n/a
Standard Insert Script Problem

Also hallo erstmal,
ich möchte ein Script schreiben, welches Daten in eine Datenbanktabelle einfügt. Es handelt sich hierbei um eine DVD Liste in die Benutzer ihre DVD's Zeilenweise eintragen können.

Nun das Problem:
Die Benutzer können vorher über eine Dropdownliste entscheiden, wie viele Titel Sie eingeben wollen. Somit entscheidet sich also, wie viele Zeilen zum Eintragen angezeigt werden. Zum Beispiel der Nutzer wällt 5 (Zeilen) in dem Dropdownfeld aus, im folgendem Fenster sollen dann nur 5 Zeilen stehen. Er füllt dann alle 5 Zeilen (Name, Regie usw.) aus und diese werden dann in die DB eingetragen. Ich weiß aber nicht wie ich das lösen kann.

Hier nur mal das Dropdown Feld (bisschen wenig aber ich komme nicht weiter):
PHP-Code:
<?php
//conf_insert1.php

include ("checkuser.php");

echo
"Wieviel Filme möchtest du einfügen?

<form action=conf_insert2.php method=post>
 
  <select size=1 name=anzahl>
  <option selected>1</option>
  <option>2</option>
  <option>5</option>
  <option>10</option>
  <option>20</option>
  <option>50</option>
  <option>100</option>
  </select></p>
<input type=submit value=Weiter> 
</form>"
;
?>
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.04.2005, 17:38  
Gast
 
Beiträge: n/a
Standard

Für sowas benutzt man Schleifen. Was hast du bisher versucht? Oder bist du nur auf ein Beispiel aus?

Gruß
phpfan
 
Alt 07.04.2005, 17:47  
Gast
 
Beiträge: n/a
Standard

Naja ich will das ihr mir das ganze Script schreibt und zwar schnell, ich hab nämlich kein Bock zu warten. Außerdem ist das eure Pflicht.

Nur Spaß
ich wusste nicht, dass man sowas mit Schleifen lösen kann. Aber da werd ich mal nach nem Tutorial suchen, da ich bis jetzt noch nichts mit Schleifen gemacht habe. Ein Beispiel wäre natürlich auch nicht schlecht, primär wollte ich aber nur Wissen wie ich es lösen kann (in dem Fall: mit Schleifen)
 
Alt 07.04.2005, 22:19  
Erfahrener Benutzer
 
Registriert seit: 08.06.2004
Beiträge: 865
RudiS
Standard

Ein Tutorial zu Schleifen (und PHP natürlich) findest du hier: http://tut.php-q.net/schleifen.html
Musst dann nur so oft die Eingabefelder untereinander schreiben, wie ausgewählt wurde.
mfg RudiS
__________________
Kunst kommt von Können und nicht von wollen, denn sonst würde es ja Wunst heißen.
RudiS ist offline  
Alt 08.04.2005, 17:08  
Gast
 
Beiträge: n/a
Standard

So gut jetzt habe ich das Script geschrieben.

Hier:
PHP-Code:
<?php
//conf_insert2.php

include ("checkuser.php");

//Konfigurationsdatei laden:
include '../admin/inc/config.php';

$anzahl $HTTP_POST_VARS["anzahl"];//Kommt aus der Drowpdownliste

echo"<form action=conf_insert3.php method=post>
<table width=60%>
 <colgroup><col span=1 width=10%><col span=1 width=30%><col span=1 width=30%><col span=1 width=30%></colgroup> 
  <tr>
    <td align=right></td>
    <td align=left>Name</td>
    <td align=left>Sprache</td>
    <td align=left>Genre</td>
  </tr>
 </table>
"
;
        
for (
$i=1$i<$anzahl+1$i++) {
        echo 
"
<table width=60%>
 <colgroup><col span=1 width=10%><col span=1 width=30%><col span=1 width=30%><col span=1 width=30%></colgroup> 
  <tr>
    <td align=right>"
.$i.".</td>
    <td align=left><input type=text name=name></td>
    <td align=left><input type=text name=sprache></td>
    <td align=left><input type=text name=genre></td>
  </tr>
 </table>"
;
    }

echo
"<input type=submit value=Eintragen></form>";
?>
Es wird so ausgegeben wie ich es will. Nur ist das Problem, dass ich nicht weiß wie ich diese Daten dann in die MySQL DB eintragen soll. Es sind ja aber immer verschieden viele Datensätze (je nachdem wieviele Zeilen angezeigt werden). Wie es mit einem Datensatz funktioniert weiß ich aber nicht mit mehreren.

Hier mal mein Anfang des Scriptes, welches den Eintrag übernimmt:
PHP-Code:
<?php
//conf_insert3.php

include ("checkuser.php");

include 
'../admin/inc/config.php';

$name $HTTP_POST_VARS["name"];
$sprache $HTTP_POST_VARS["sprache"];
$genre $HTTP_POST_VARS["genre"];

$db_link = @mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS);
mysql_select_db(MYSQL_DATABASE);

$eintrag "????????????";

mysql_query($eintrag);

echo 
"Die Daten wurden erfolgreich eingefügt.
<a href=conf_insert.php>zurück</a>"
;

?>
 
Alt 08.04.2005, 17:14  
Gast
 
Beiträge: n/a
Standard

1. Alle $HTTP_POST_VARS ändern in $_POST
2. Alle Namen der InputFelder noch mit [] versehen, dann bekommst du hinterher ein Array, alse z.B. name=genre[]
3. In dem Script, in dem Du die Daten speichern willst, baust du wieder eine Schleife ein, mit der du die Werte aus den Array's $_POST['name'], $_POST['sprache'] und $_POST['genre'] nimmst und in die DB speicherst.

Und falls du es noch nicht wissen solltest, Attribute gehören zwischen " oder ', also <input type='text' name='genre[]'>

Gruß
phpfan
 
Alt 08.04.2005, 17:32  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von phpfan
1. Alle $HTTP_POST_VARS ändern in $_POST
Wieso das? Bis jetzt hats doch bei mir auch mit $HTTP_POST_VARS geklappt, was ist da anders?

Zitat:
Zitat von phpfan
Und falls du es noch nicht wissen solltest, Attribute gehören zwischen " oder ', also <input type='text' name='genre[]'>
Auch hier hat es bei mir mit der Übergabe auch immer ohne ' bzw. " funktioniert. Warum also?
 
Alt 08.04.2005, 17:40  
Gast
 
Beiträge: n/a
Standard

AB PHP 4.2 existieren die Superglobalen Variablen $_POST, $_GET, $_SERVER, $_COOKIE und $_SESSION. Zum einen ist es weniger Schreibarbeit, zum anderen kann es dir passieren, dass je nach Konfiguration die alte Schreibweise bei PHP 5 nicht mehr funktioniert.

Zum Thema Attribute. Willst du ordentlichen HTML-Code produzieren, oder ist es dir egal, dass das, was du machst schlampig ist? Außerdem wirst du spätestens bei dem Attribut value Probleme bekommen.

Fazit: Also lieber direkt anständig machen, oder?

Gruß
phpfan
 
Alt 08.04.2005, 18:25  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von phpfan
Fazit: Also lieber direkt anständig machen, oder?
Nagut, dann werd ich das jetzt immer so machen.
 
Alt 08.04.2005, 18:28  
Erfahrener Benutzer
 
Registriert seit: 30.01.2005
Beiträge: 435
Jojo1
Standard

So ist richtig

Dann passiert sowas nicht mehr
Jojo1 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Statistik Script Referrer Problem 7Style PHP Tipps 2008 28 01.07.2008 15:14
Problem mit php script Jelko PHP Tipps 2008 2 19.08.2007 23:28
Login script Problem Marian Datenbanken 8 30.03.2006 20:16
passwort script problem PHP Tipps 2006 8 15.02.2006 10:30
PRoblem mit Cookie bei PHPbb-Board PHP Tipps 2007 8 12.12.2005 20:56
Problem mit einem Script PHP Tipps 2007 7 28.11.2005 16:37
Problem mit Login Script PHP Tipps 2007 4 15.11.2005 17:29
Problem mit simplen Script Kori PHP Tipps 2005-2 7 07.10.2005 13:35
Problem mit Script zur Dateiauflistung PHP Tipps 2005-2 3 24.06.2005 16:12
kleines Problem mit Script renzo PHP Tipps 2005-2 7 16.06.2005 09:11
Problem mit Script auf verschiedenen Servern PHP Tipps 2005 40 22.03.2005 17:26
problem fertiges script anzupassen kid01 HTML, Usability und Barrierefreiheit 8 22.03.2005 07:25
[Erledigt] PHP Script Problem PHP Tipps 2005 12 06.01.2005 12:38
Problem mit einem Bildergallery Script (Strato Problem???) sharky PHP Tipps 2007 9 05.01.2005 11:00
download und Insert problem! PHP Tipps 2004 4 04.09.2004 16:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
insertscript php, php function insertscript(), php insertscript, insertscript () in php

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:41 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.