php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 24.08.2005, 15:03  
Erfahrener Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 205
faultier
Standard verschachtelte if

hallo, ich habe irgendwie ein problem mit einer Verschachtelten if abfrage und finde den fehler einfach nicht...
wäre nett wenn mir jemand uaf die sprünge helfen könnte!!!
PHP-Code:
<?php
if($_GET['monat'] == "alle"){

if(
$_GET['kat'] == "alle"){

$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;

}

else {

$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  AND kat = '$_GET[kat]' ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;

}

}

else {

if(
$_GET['kat'] == "alle"){

$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  AND monat =  '$_GET[monat] ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;

}

else {

$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  AND monat =  '$_GET[monat]  AND kat = '$_GET[kat]' ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;

}

}
?>
mfg[/code]
faultier ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 24.08.2005, 15:13  
Gast
 
Beiträge: n/a
Standard

Hi faultier,
woran hackt es denn?? Denn ich hab das Script ausprobiert kommt aber keine Fehlermeldung! Was funktioniert denn nicht? Beschreib doch mal genauer
 
Alt 24.08.2005, 15:15  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

es gibt nur eine else....

die ersten beiden kanst du zusammen fassen
PHP-Code:
<?php
if($_GET['monat'] == "alle" AND $_GET['kat'] == "alle")
{
echo 
"bla";
}
elseif (
$_GET['kat'] == "alle")
{
echo 
"bla";
}
else
{
echo 
"bla";
}
?>
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 24.08.2005, 15:25  
Erfahrener Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 205
faultier
Standard

so in etwa?
PHP-Code:
<?php
if($_GET['monat'] == "alle" AND $_GET['kat'] == "alle"){
$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;
}
elseif (
$_GET['monat'] == "alle") {
$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  AND kat = '$_GET[kat]' ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;
}
elseif(
$_GET['kat'] == "alle") {
$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  AND monat =  '$_GET[monat] ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;
}
else {
$strsql "SELECT * FROM cms_cal WHERE jahr = '$_GET[jahr]'  AND monat =  '$_GET[monat]  AND kat = '$_GET[kat]' ORDER BY jahr, monat, tag LIMIT $from, $max_results " ;
}

$result mysql_query($strsql);
$num_rows mysql_num_rows($result);
?>
..da bekomme ich die selbe meldung:
Zitat:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/k94/www/praystation-lainz.com/cal_v5.php on line 286
faultier ist offline  
Alt 24.08.2005, 15:33  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

PHP-Code:
<?php
$server 
="localhost";
$user ="root";
$pass =" ";
$datenbank ="DB";

$verbindung mysql_connect($server,$user,$pass) or die ("Keine Verbindung möglich.");
mysql_select_db($datenbank) or die ("Datenbank existiert nicht.");
?>
PHP-Code:
<?php
$jahr 
$_GET['jahr'];
$abfrage "SELECT * FROM cms_cal WHERE jahr = '$jahr'"// den rest spar ich mir hier!
$ergebnis mysql_query($abfrage) or die(mysql_error());
$row mysql_fetch_array($ergebnis);

?>
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 24.08.2005, 15:43  
Erfahrener Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 205
faultier
Standard

ich weiß nicht was du mir damit sagen möchtest?!?...dass ich diese teile auch benötige???...
auch wenn du es nicht für möglich hälltst - das von mir gepostete ist nur ein teil aus einer seite die ca 400zeilen hätte - und von den ist wahrscheinlich nur dieser abschnitt relevant..

ich bin nicht völlig neu dabei - nur ein bisschen unfähig (wie man hier ja sieht)...ich erwarte auch keine fertigen scripts sondern nur einen hinweiß was falsch ist..:wink:
mfg
faultier ist offline  
Alt 24.08.2005, 15:49  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

na das ist doch gut wenn du schon ahnung hast.
dann benutze doch mal:
PHP-Code:
<?php
$result 
mysql_query($strsql) or die(mysql_error()); 
?>
und schreib deine Select so wie ich es Dir gezeigt habe. :wink:
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 24.08.2005, 16:31  
Erfahrener Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 205
faultier
Standard

hm..danke - ich habe es anders gelöst...irgendwas in den selects muss falsch gewesen sein - ka was genau..ich hab dann nicht weitergesucht sondern gleich ne eigentlich elegantere lösung ausprobiert -> und es funktioniert :wink:

trotzdem danke für deine mühe!!!
faultier ist offline  
Alt 24.08.2005, 16:34  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

hab ja gesagt das deine Select abfrage falsch ist. aber ok... :wink:
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 24.08.2005, 16:57  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

By the way:
  • Error reporting level hochsetzen (in der php.ini auf E_ALL), dann passieren Fehler, wie $_GET[jahr] anstatt $_GET['jahr'] nichtmehr[1];
  • Entsprechend dann zuerst die Existenz eines Feldes von $_GET etc. sicherstellen, bevor du darauf zugreifst, z.B. so:
    PHP-Code:
    <?php
    $jahr 
    1970;
    if (isset(
    $_GET['jahr'])) $jahr=$_GET['jahr'];

    // oder

    $jahr = (isset($_GET['jahr'])) ? $_GET['jahr'] : 1970;
    ?>
  • Vor SQL-Injections schützen, falls nicht an anderer Stelle getan: [2] und [3].
  • DCLP-FAQ: Warum soll ich nicht SELECT * schreiben?[4]
  • Code einrücken und einheitlich formatieren. Siehe z.B. die Kodierkonventionen des PEAR-Projektes[5].
  1. http://php.net/manual/en/ref.errorfu...rror-reporting
  2. http://php-faq.de/q/q-sql-injection.html
  3. http://php.net/mysql_real_escape_string Example 3
  4. http://www.php-faq.de/q/q-sql-select.html
  5. http://pear.php.net/manual/en/standards.php

Liebe Grüße,
Basti
Basti 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
JS Verschachtelte Auswahlfelder loki0815 HTML, Usability und Barrierefreiheit 2 26.06.2008 18:52
verschachtelte Rubriken ausgeben / alle anzeigen prinzli PHP Tipps 2008 3 25.02.2008 22:37
Verschachtelte JOINs ... Ergebnis abziehen ... tomfrit Datenbanken 2 10.12.2007 08:14
Andere Lösung für verschachtelte Mysql Anfrage Goschy PHP Tipps 2007 8 27.03.2007 21:47
[CSS] Verschachtelte Div Container - Breite anpassen I-Spy HTML, Usability und Barrierefreiheit 7 14.05.2006 11:51
Verschachtelte Abfrage über mehrere Tables hinweg? php_frage Datenbanken 9 29.04.2006 19:55
Verschachtelte Includes FoXyLiOn PHP-Fortgeschrittene 3 12.02.2006 15:24
Verschachtelte Datenbankabfrage - wie fange ich an? PHP Tipps 2007 9 02.02.2006 11:09
verschachtelte schleife marcels PHP Tipps 2007 3 08.12.2005 18:00
verschachtelte Abfrage PHP Tipps 2005-2 12 20.08.2005 20:28
verschachtelte if-else anweisung!? PHP Tipps 2005-2 7 04.08.2005 11:53
2 verschachtelte while Schleifen. Großes Performanceproblem Datenbanken 3 30.05.2005 12:52
verschachtelte MySQL-Abfrage PHP Tipps 2005 3 04.05.2005 12:44
[Erledigt] Verschachtelte Arrays ausgeben PHP-Fortgeschrittene 2 10.12.2004 11:29
2 verschachtelte Divlayer und der Firefox. Tutti HTML, Usability und Barrierefreiheit 2 26.07.2004 22:24

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
order by verschachtelt, if($_get[\'jahr\']), verschachtelte if, $kat=$_get[\'kat\'], orderby=jahr

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