php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.10.2005, 20:22  
Gast
 
Beiträge: n/a
Standard problem mit function

Ich habe folgendes Script:
PHP-Code:
<?php
function return_month($date_day$date_month$date_year$kind$place){
        if(
$date_day!="" AND $date_month!="" AND $date_year){
        
$event_month=mysql_query("SELECT month, date_month, date_year, date FROM event_month WHERE free='yes' AND date_month='$date_month' AND date_year='$date_year'");}
        else if(
$kind!=""){
        }
        else if(
$place!=""){
        }
        else{
            
$event_month=mysql_query("SELECT month, date_month, date_year, date FROM event_month WHERE free='yes'");}
        return 
$event_month;}
     
         
       
         echo 
"<table width='100%' cellspacing='0' cellpadding='0'>"
         echo 
"<tr bgcolor=".toggleBG("#CCCCCC","#FFFFFF").">";
         echo 
"<td width='20%' align='left'> Name </td>";
        echo 
"<td width='20%' align='left'> Datum </td>";
         echo 
"<td width='20%' align='left'> Ort </td>";
        echo 
"<td width='20%' align='left'> Art </td>";
         echo 
"<td width='20%' align='left'> Eintritt </td>";
         echo 
"</tr>";
         
         while(list(
$em_month$em_date_month$em_date_year$em_date)=mysql_fetch_row(return_month($date_day$date_month$date_year$kind$place))){ 
            echo 
"<tr bgcolor=".toggleBG("#CCCCCC","#FFFFFF").">";
            echo 
"<td align='left' colspan='5' style='color:#FF6600'>[b]".$em_month."[/b]</td>";
            echo 
"</tr>";}
        
            
      echo 
"</table>";
?>
wenn aber aus der Tabelle für $event_month mehr als ein Wert ausgelesen wird, wird aber nur einer ausgegeben bzw aus der Funktion übergeben. Woran liegt das und wie kann man das ändern?
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 19.10.2005, 20:25  
Erfahrener Benutzer
 
Registriert seit: 01.07.2005
Beiträge: 225
JohnRambo
Standard

probier mal zum schluss eine rückgabewert einzubinden! also was die funktion zurückgeben soll mit return $data zum beispiel
JohnRambo ist offline  
Alt 19.10.2005, 20:30  
Gast
 
Beiträge: n/a
Standard

hab ich ja schon
Zitat:
return $event_month;}
 
Alt 19.10.2005, 20:35  
Erfahrener Benutzer
 
Registriert seit: 01.07.2005
Beiträge: 225
JohnRambo
Standard

sorry, hab ich nicht gesehn! Aber, der wert wird ja nicht immer übergeben,
da manchmal ja die if-abfrage zugreift und das script gar nicht zum rückgabewert durchkommt

else if($kind!=""){
}
else if($place!=""){
}

was meinst du mit der passage?!
JohnRambo ist offline  
Alt 19.10.2005, 20:38  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

bist du dir den sicher, dass überhaupt mehrere ergebnisse gefunden werden?

versuch mal mit mysql_num_rows nachzuschauen.
Buhmann ist offline  
Alt 19.10.2005, 20:38  
Gast
 
Beiträge: n/a
Standard

da müssen später noch andere bedingungen für das auslesen aus der tabelle rein.
 
Alt 19.10.2005, 22:50  
Gast
 
Beiträge: n/a
Standard

Ja und?
Übersichtlich programmieren. Potentielle Fehlerquellen nicht in eine Zeile/Anweisung zusammenstopfen, sondern voneinander trennen. Fehlerbehandlung einbauen.
Notfalls Debugausgaben benutzen.
Sonst dauert das Raten ewig.

PHP-Code:
<?php
function return_month($date_day$date_month$date_year$kind$place) {

    if(
$date_day!="" AND $date_month!="" AND $date_year) {
        
$sql "SELECT month, date_month, date_year, date FROM event_month WHERE free='yes' AND date_month='$date_month' AND date_year='$date_year'";
        
/* Debugausgabe */ echo '<tr><td>Debug:</td><td colspan="4">'$sql'</td></tr>';
        
$event_month=mysql_query($sql);
    }
    else if(
$kind!="") {
        
// nichts?
        
$event_month false;
    }
    else if(
$place!=""){
        
// nichts?
        
$event_month false;
    }
    else {
        
$sql "SELECT month, date_month, date_year, date FROM event_month WHERE free='yes'";
        
/* Debugausgabe */ echo '<tr><td>Debug:</td><td colspan="4">'$sql'</td></tr>';
        
$event_month=mysql_query($sql);
    }
    return 
$event_month;
}

echo 
'<table width="100%" cellspacing="0" cellpadding="0">
                <tr bgcolor="'
toggleBG("#CCCCCC","#FFFFFF"), '">
                    <td width="20%" align="left">Name</td>
                    <td width="20%" align="left">Datum</td>
                    <td width="20%" align="left">Ort</td>
                    <td width="20%" align="left">Art</td>
                    <td width="20%" align="left">Eintritt</td>
                </tr>'
;

$result return_month($date_day$date_month$date_year$kind$place);
if (!
$result) {
    die(
"return_month($date_day, $date_month, $date_year, $kind, $place) liefert false. "mysql_error());
}
/* Debugausgabe */ echo '<tr><td>Debug:</td><td colspan="4">'mysql_num_rows($result), ' Ergebnisse</td></tr>';
while(
$row=mysql_fetch_array($result)) {
    echo 
'
                <tr bgcolor="'
toggleBG("#CCCCCC","#FFFFFF"), '">
                    <td align="left" colspan="5" style="color:#FF6600; font-weight:bold;">'
htmlentities($row['month']), '</td>
                </tr>'
;
}
echo 
'</table>';
?>
 
 


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
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
[Erledigt] sql-Code an function übergeben und array mit Ergebniss zurück bekommen Felix PHP Tipps 2008 6 30.07.2008 16:59
GD-Spezialisten gesucht....wer kann helfen? rezix PHP Tipps 2008 12 26.02.2008 17:55
Einfach Datepicker gesucht Cyberbob_at_tot PHP Tipps 2007 5 14.11.2005 09:10
Problem mit function PHP Tipps 2007 4 06.11.2005 22:19
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
Problem Call to a member function on a non-object PHP Tipps 2005 5 24.05.2005 19:14
Problem bei erstellung einer tabelle mit function und array PHP Tipps 2005 5 21.04.2005 20:54
[Erledigt] function problem PHP Tipps 2005 22 17.04.2005 21:32
problem fertiges script anzupassen kid01 HTML, Usability und Barrierefreiheit 8 22.03.2005 07:25
[Erledigt] OOP: function in eine andere function einbinden PHP Tipps 2005 10 20.03.2005 16:13
functionwiederholung in function PHP Tipps 2004 1 26.10.2004 15:09
Problem mit function PHP Tipps 2004 2 10.09.2004 21:41
Problem mit Konstruktor Stümper PHP Tipps 2004 11 23.08.2004 12:13
foreach problem mAy^daY PHP Tipps 2004 3 02.06.2004 20:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
return_month php

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