php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.09.2011, 13:01  
Neuer Benutzer
 
Registriert seit: 23.09.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Mandrax befindet sich auf einem aufstrebenden Ast
Standard

Das war im Prinzip der ganze code Hier aber nochmal am Stück!
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Vokabeltest</title>
</head>
<body>
<?PHP
$vokabeln 
'vok.csv';

$fp fopen $vokabeln'r' );

while ( 
$array fgetcsv $fp1000';' ) )
{
echo 
"Feld 0= ".$array[0]." Feld 1= ".$array[1]." Feld 2= ".$array[2];
}

fclose($fp);
?>

<form action="ergebnis.php" method="post">
<p><?PHP echo $array[0]?><br /><input name="<?PHP echo $array[0]?>" type="text" size="30" /></p>
<p><?PHP echo $array[2]?><br /><input name="<?PHP echo $array[2]?>" type="text" size="30" /></p>
<p><?PHP echo $array[4]?><br /><input name="<?PHP echo $array[4]?>" type="text" size="30" /></p>
<p><?PHP echo $array[6]?><br /><input name="<?PHP echo $array[6]?>" type="text" size="30" /></p>
</form>
</body>
</html>
Mandrax ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 26.09.2011, 13:23  
Erfahrener Benutzer
 
Benutzerbild von Delirius
 
Registriert seit: 07.07.2009
Beiträge: 215
PHP-Kenntnisse:
Anfänger
Delirius wird schon bald berühmt werden
Standard Formular, dass Eingaben mit SQL Tabelle vergleicht?

Gut...dann schau dir bitte deinen Code Zeile für Zeile mal an.

Wo definierst du dein Array? Und warum kommen die Daten nicht im Formular an?
__________________
LG Delirius

Ein Ring Sie zu knechten...
Delirius ist offline   Mit Zitat antworten
Alt 26.09.2011, 23:57  
Neuer Benutzer
 
Registriert seit: 23.09.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Mandrax befindet sich auf einem aufstrebenden Ast
Standard

ok, habs verstanden...mit foreach wird es aber auch nicht klappen, da ich ja die einzelnen werte der felder brauche, keine liste aller, oder? nehme an, man kann keine formularteile als html in den php bereich reinziehen? ich bekomm dann ne syntaxfehlermeldung...sonst hätte ich die while schleife ja verlängern können über das formular hinaus!
Mandrax ist offline   Mit Zitat antworten
Alt 27.09.2011, 08:18  
Erfahrener Benutzer
 
Benutzerbild von Delirius
 
Registriert seit: 07.07.2009
Beiträge: 215
PHP-Kenntnisse:
Anfänger
Delirius wird schon bald berühmt werden
Standard Formular, dass Eingaben mit SQL Tabelle vergleicht?

Zitat:
Zitat von Mandrax
nehme an, man kann keine formularteile als html in den php bereich reinziehen
Doch das geht...du musst eben nur abgrenzen zwischen HTML und PHP, indem du den Teil mit PHP auch mit den entsprechenden Tags setzt.

PHP-Code:
<form method="post" action="">
<?
      
while(($data fgetcsv($handle1000";")) !== FALSE){
          echo 
"<input type='text' name='' />";
      }
?>
<input type="submit" value="absenden" />
</form>
Zeile für Zeile wird die Datei durchlaufen und bei jedem Durchlauf wird dann ein input-Feld erstellt.

Ich glaube ernsthaft, dass du dich sehr viel mehr in die Grundlagen einlesen solltest...vor allem dann, wenn du in Zukunft weitere Projekte erstellen möchtest.

Muss dein Projekt bis zu einem naheliegendem Zeitpunkt fertig sein?
__________________
LG Delirius

Ein Ring Sie zu knechten...
Delirius ist offline   Mit Zitat antworten
Alt 27.09.2011, 09:49  
Neuer Benutzer
 
Registriert seit: 23.09.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Mandrax befindet sich auf einem aufstrebenden Ast
Standard

ich mach das ganze für meinen bruder und plane keine weiteren projekte erst mal er braucht das für die arbeit und ich hab ab nächster woche wenig zeit! deshalb wollte ich es schnell fertig haben, aber will dann doch noch so ungefähr verstehen, wie das script funktioniert....deshalb wollte ich es selbst zummindest "zusammenbasteln" danke auf jeden fall schon mal für die ganze hilfe! noch eine sehr blöde frage zum abschluss: muss das erste tag nur <? heißen, nicht <?PHP ?

achso, eine sache...kann ich auch den wert des arrays vor dem jeweiligen textfeld anzeigen lassen?
Mandrax ist offline   Mit Zitat antworten
Alt 27.09.2011, 10:10  
Erfahrener Benutzer
 
Benutzerbild von Delirius
 
Registriert seit: 07.07.2009
Beiträge: 215
PHP-Kenntnisse:
Anfänger
Delirius wird schon bald berühmt werden
Standard Formular, dass Eingaben mit SQL Tabelle vergleicht?

Zitat:
Zitat von Mandrax
muss das erste tag nur <? heißen, nicht <?PHP
Nein, muss es nicht, das kann "<?" oder "<?php" geschrieben werden.

Zitat:
Zitat von Mandrax
kann ich auch den wert des arrays vor dem jeweiligen textfeld anzeigen lassen?
Ja, das geht...du musst lediglich innerhalb der Schleife eben die dafür vorgesehene Variable setzen.

Schau dir einfach mal den Code hier an und probier ihn aus...

PHP-Code:
<?
// Wenn Formular noch nicht abgesendet wurde anzeigen
  
if($_POST["send"] != 1){
// CSV-Datei zum lesen öffnen
  
$handle fopen ("vok.csv","r");
// Start des Formulares
?>
<form method="post" action="">
  <fieldset>
    <legend>Vokabeltest / Deutsch in Englisch</legend>
<?
      
// Beginn der Schleife, die die CSV Zeile für Zeile durchläuft
        
while(($data fgetcsv($handle1000";")) !== FALSE){
          echo 
"<label>".$data[0].": <input type='text' name='$data[0][$data[1]]' /></label><br />";
        }
// Schliessen der CSV-Datei
  
fclose ($handle);
?>
  </fieldset>
  <input type="hidden" name="send" value="1" />
  <input type="submit" value="absenden" />
</form>
<?
} else {
// Wenn Formular abgesendet wurde die Auswertung starten
  // Setzen eines Counters, um später die Anzahl der Fehler darzustellen
    
$i 0;
  
// Durchlauf der übertragenen $_POST-Variablen
    
foreach($_POST as $deutsch => $value){
        foreach(
$value as $englisch => $eingabe){
        
// Wenn die vom User gemachte Eingabe nicht gleich der englischen
        // Übersetzung ist, gib den Fehler dazu aus. Die Funktion strtoupper
        // setzt die Variablen $englisch und $eingabe beide komplett in
        // Großbuchstaben um, damit ist es egal ob jemand "House" oder "hOuSE"
        // schreibt. Damit deckst du das gleich mit ab.
          
if(strtoupper($englisch) != strtoupper($eingabe)){
              echo 
"Fehler: ".$eingabe." ist nicht englisch f&uuml;r ".$deutsch.".<br />";
            
// Wenn Fehler vorhanden Counter hochzählen
              
$i++;
        }
      }
  }
  
// Die Auswertung wurde beendet --> Ausgabe Anzahl der Fehler
    
echo "Anzahl der Fehler: ".$i;
}
?>
Dabei sollten in der CSV die Daten wie folgt stehen:
Code:
Haus;House
Auto;Car
Apfel;Apple
Das ist jetzt nur eine Möglichkeit das Ganze umzusetzen...ob es die schönste Möglichkeit ist, glaub ich nicht...ich bin selbst noch sehr viel am lernen.
__________________
LG Delirius

Ein Ring Sie zu knechten...
Delirius ist offline   Mit Zitat antworten
Alt 27.09.2011, 13:11  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Zitat:
Zitat von Delirius Beitrag anzeigen
Nein, muss es nicht, das kann "<?" oder "<?php" geschrieben werden.
Obacht!

Die Kurzform <? ist nur dann zulässig, wenn die short_open_tags erlaubt sind (das ist eine Einstellung in der php.ini) - die lange Form <?php ist dagegen immer gültig. Im Zweifel IMMER die lange Form verwenden!
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 27.09.2011, 13:16  
Erfahrener Benutzer
 
Benutzerbild von Delirius
 
Registriert seit: 07.07.2009
Beiträge: 215
PHP-Kenntnisse:
Anfänger
Delirius wird schon bald berühmt werden
Standard Formular, dass Eingaben mit SQL Tabelle vergleicht?

Zitat:
Zitat von Istegelitz
Obacht!
Sorry...nicht dran gedacht...bei uns sind short_open_tags erlaubt.

Sollte ich besser drauf achten, bevor ich tolle Ratschläge abgebe...
__________________
LG Delirius

Ein Ring Sie zu knechten...

Geändert von Delirius (27.09.2011 um 18:09 Uhr).
Delirius ist offline   Mit Zitat antworten
Antwort


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
SQL Tabelle ordnen in PHP djmaggo Datenbanken 4 27.01.2011 07:37
Scriptsuche Daten aus HTML Tabelle A in HTML Tabelle B einfügen headbannger83 Scriptbörse 1 10.01.2011 15:39
[Erledigt] Datum, SQL Tabelle , Format ändern schlapphut PHP Tipps 2010 9 12.11.2010 15:10
PHP: Formular Generator Zergling-new Tutorials 16 06.07.2010 03:14
Daten über Formular eingeben und in Tabelle speichern. WIE? PHP Tipps 2006 20 10.02.2006 16:04
[Erledigt] Problem mit dem Füllen einer Tabelle über Formular PHP Tipps 2006 18 10.01.2006 12:51
Problem mit Anzeige einer Tabelle mit dem Firefox? HTML, Usability und Barrierefreiheit 8 28.11.2005 15:08
[Erledigt] Problem mit mySQL Datenbanken 7 27.09.2005 12:06
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
Darstellung Formular innerhalb Tabelle saibot HTML, Usability und Barrierefreiheit 4 24.07.2005 20:35
[Erledigt] Formular - Eingaben bestätigen mit Java HTML, Usability und Barrierefreiheit 6 26.04.2005 10:37
Eingaben Check im Formular PHP Tipps 2007 16 14.04.2005 11:01
Im Formular user abfragen? Datenbanken 3 06.01.2005 10:51
tabelle aus formular erstellen Datenbanken 0 26.08.2004 14:43
Formular - Tabelle hat n zeilen mit zu übergebenden werten PHP Tipps 2004 2 09.07.2004 20:50

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
zwei felder sql vergleichen mit einem input text

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:12 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