php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.10.2009, 12:38  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard [Erledigt] Fehler in foreach

Hallo zusammen,

ich habe diese Datenbanktabelle:

PHP-Code:
CREATE TABLE `preise` (
 `
idint(11NOT NULL auto_increment,
 `
zeitstempelvarchar(20NOT NULL,
`
hotelvarchar(50NOT NULL,
 `
zimmervarchar(5NOT NULL,
 `
p_01varchar(7NOT NULL,
 `
p_02varchar(7NOT NULL,
 `
p_03varchar(7NOT NULL,
 `
p_04varchar(7NOT NULL,
 `
p_05varchar(7NOT NULL,
 `
p_06varchar(7NOT NULL,
 `
p_07varchar(7NOT NULL,
 `
p_08varchar(7NOT NULL,
 `
p_09varchar(7NOT NULL,
 `
p_10varchar(7NOT NULL,
 `
p_11varchar(7NOT NULL,
 `
p_12varchar(7NOT NULL,
 `
p_13varchar(7NOT NULL,
 `
p_14varchar(7NOT NULL,
 `
p_15varchar(7NOT NULL,
 `
p_16varchar(7NOT NULL,
 `
p_17varchar(7NOT NULL,
 `
p_18varchar(7NOT NULL,
 `
p_19varchar(7NOT NULL,
 `
p_20varchar(7NOT NULL,
 `
p_21varchar(7NOT NULL,
 `
p_22varchar(7NOT NULL,
 `
p_23varchar(7NOT NULL,
 `
p_24varchar(7NOT NULL,
 `
p_25varchar(7NOT NULL,
 `
p_26varchar(7NOT NULL,
 `
p_27varchar(7NOT NULL,
 `
p_28varchar(7NOT NULL,
 `
p_29varchar(7NOT NULL,
 `
p_30varchar(7NOT NULL,
 `
p_31varchar(7NOT NULL,
 `
p_32varchar(7NOT NULL,
 `
p_33varchar(7NOT NULL,
 `
p_34varchar(7NOT NULL,
 `
p_35varchar(7NOT NULL,
 `
p_36varchar(7NOT NULL,
 `
p_37varchar(7NOT NULL,
 `
p_38varchar(7NOT NULL,
 `
p_39varchar(7NOT NULL,
 `
p_40varchar(7NOT NULL,
 `
p_41varchar(7NOT NULL,
 `
p_42varchar(7NOT NULL,
 `
p_43varchar(7NOT NULL,
 `
p_44varchar(7NOT NULL,
 `
p_45varchar(7NOT NULL,
 
PRIMARY KEY (`id`)
TYPE=MyISAM AUTO_INCREMENT=26 ;

INSERT INTO `preiseVALUES (21'1254988705''XY''3''70,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45''66,45'); 
und möchte aus dieser Zeile den niedrigsten Preis rausfiltern.
Mein Versuch sieht folgendermaßen aus:

PHP-Code:
include ("php/mysql_connect.php");

$db_connect mysql_connect ($dbhost$dbuser$dbpass);
$db_select mysql_select_db ($dbname);
$db_sort_string "SELECT * FROM preise";
$db_abfragen mysql_query ($db_sort_string,$db_connect);
$max mysql_num_rows($db_abfragen);
for (
$i=0$i<$max$i++) {
 
$zeile mysql_fetch_array ($db_abfragenMYSQL_ASSOC);
 
print_r($zeile);
 foreach (
$zeile as $spalte => $wert) {
 if (
eregi('p_',$spalte)) {
  
$myPreise[]=$wert;
 }
 }
 
sort($myPreise); // vom kleinsten zum größten sortieren
 
$klPreis=$myPreise[0]; // nach der Sortierung ist das erste Element auch das kleinste
 
echo $klPreis;

Irgendwie ist aber in der foreachschleife ein fehler, da er mir eine weiße Seite ausgibt, wenn ich die foreach rausnehme nicht mehr. Wo ist mein Fehler? Habe ich irgend ein Zeichen vergessen?

Vielen Dank für die Hilfe

Geändert von zoro (08.10.2009 um 14:08 Uhr).
zoro ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 08.10.2009, 12:43  
Erfahrener Benutzer
 
Benutzerbild von Ti-Systems
 
Registriert seit: 06.10.2008
Beiträge: 240
PHP-Kenntnisse:
Fortgeschritten
Ti-Systems befindet sich auf einem aufstrebenden Ast
Ti-Systems eine Nachricht über ICQ schicken Ti-Systems eine Nachricht über MSN schicken
Standard

Hallo,

Mach mal ein error_reporting(E_ALL); an den Anfang des Scriptes..

mfg Timo
Ti-Systems ist offline  
Alt 08.10.2009, 12:51  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard

leider nichts, nur eine weisse seite, kein quelltext
zoro ist offline  
Alt 08.10.2009, 12:54  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard

wenn ich die foreach schleife weglasse, bekomme ich folgendes ausgegeben durch print_r($zeile);:

Array ( [id] => 21 [zeitstempel] => 1254988705 [hotel] => Hotel Heide [zimmer] => 3 [p_01] => 70,45 [p_02] => 66,45 [p_03] => 66,45 [p_04] => 66,45 [p_05] => 66,45 [p_06] => 66,45 [p_07] => 66,45 [p_08] => 66,45 [p_09] => 66,45 [p_10] => 66,45 [p_11] => 66,45 [p_12] => 66,45 [p_13] => 66,45 [p_14] => 66,45 [p_15] => 66,45 [p_16] => 66,45 [p_17] => 66,45 [p_18] => 66,45 [p_19] => 66,45 [p_20] => 66,45 [p_21] => 66,45 [p_22] => 66,45 [p_23] => 66,45 [p_24] => 66,45 [p_25] => 66,45 [p_26] => 66,45 [p_27] => 66,45 [p_28] => 66,45 [p_29] => 66,45 [p_30] => 66,45 [p_31] => 66,45 [p_32] => 66,45 [p_33] => 66,45 [p_34] => 66,45 [p_35] => 66,45 [p_36] => 66,45 [p_37] => 66,45 [p_38] => 66,45 [p_39] => 66,45 [p_40] => 66,45 [p_41] => 66,45 [p_42] => 66,45 [p_43] => 66,45 [p_44] => 66,45 [p_45] => 66,45 )

wäre ja auch richtig. verstehe einfach nicht was in der schleife falsch ist?
zoro ist offline  
Alt 08.10.2009, 12:55  
Erfahrener Benutzer
 
Registriert seit: 13.05.2009
Beiträge: 1.166
PHP-Kenntnisse:
Fortgeschritten
dennis81 befindet sich auf einem aufstrebenden Ast
Standard

und ini_set('display_errors', 'on');
dennis81 ist offline  
Alt 08.10.2009, 12:58  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard

auch nichts, nur weiss
zoro ist offline  
Alt 08.10.2009, 12:58  
Neuer Benutzer
 
Registriert seit: 23.11.2008
Beiträge: 27
PHP-Kenntnisse:
Anfänger
magpie befindet sich auf einem aufstrebenden Ast
Standard

Also ich persönlich finde die Tabelle schlecht, zu unflexibel. Wenn du zwei Tabellen machst, eine für die Hotels und eine für die Preise, kannst du das ganze direkt über die SQL-Abfrage lösen.
magpie ist offline  
Alt 08.10.2009, 13:05  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard

das geht leider nicht weil zu jedem hotel mehrere zimmertypen existieren und ich schon eine zweite tabelle habe wo die verfügbarkeiten für die jeweiligen zimmer enthalten sind
damit ich immer den zusammenhang finde brauche ich die spalte hotel und zimmer in beiden tabellen
zoro ist offline  
Alt 08.10.2009, 13:08  
Neuer Benutzer
 
Registriert seit: 23.11.2008
Beiträge: 27
PHP-Kenntnisse:
Anfänger
magpie befindet sich auf einem aufstrebenden Ast
Standard

Ok, ich meinte eigentlich, dass für jeden Preis ein Eintrag besteht. Also pro Zimmer nicht 45 Spalten sonder 45 Zeilen.
magpie ist offline  
Alt 08.10.2009, 13:34  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

bearbeite bitte mal deinen ersten Beitrag und benutze

[php]// dein Code[/php]

Dann können wir dir besser und schneller helfen!
Asipak 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] vista, windows update Fehler 80070422 Screeze Off-Topic Diskussionen 3 23.09.2009 18:24
[Erledigt] Fehler bei Array ausgabe newWorldOrder PHP Tipps 2009 2 23.02.2009 17:29
Fehler: Unexcepted { Stephan_87 PHP Tipps 2008 6 13.12.2008 21:04
Objekte: Next() durch foreach() erstetzt - Object of type variant did not create... badrandolph PHP Tipps 2008 7 26.11.2008 19:14
[Erledigt] foreach liefert Invalid argument supplied for foreach() fehler! litterauspirna PHP Tipps 2008 8 11.08.2008 11:22
mysql fehler meldung: basicx Datenbanken 1 22.07.2008 09:48
Fehler in rekursiver Funktion tinchen PHP Tipps 2006 1 27.08.2006 20:24
[Erledigt] Mysql Syntax Fehler Datenbanken 3 06.07.2006 09:58
[Erledigt] Seite wird nicht angezeigt, untersch. Fehler bei IE/FF/Safar PHP-Fortgeschrittene 19 31.05.2005 14:52
Blöder MySQL Fehler PHP Tipps 2005 3 15.05.2005 03:14
Fehlermeldung - aber kein fehler... Tschuu HTML, Usability und Barrierefreiheit 16 14.03.2005 15:56
foreach: Übergabe by reference Stümper PHP Tipps 2005 2 15.02.2005 15:35
Wo liegt der fehler?? PHP-Fortgeschrittene 5 22.12.2004 09:54
Fehler bei foreach, Meldung unterdrücken? schifti PHP Tipps 2004-2 2 26.11.2004 12:52
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05


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