XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   Serveradministration und serverseitige Scripte (http://xhtmlforum.de/forumdisplay.php?f=80)
-   -   Ausgabe geschieht nur einmal (http://xhtmlforum.de/showthread.php?t=64609)

Benutzername 12.05.2011 15:59

Ausgabe geschieht nur einmal
 
Servus,

habe mir einen (für mich) ziemlich komplizierten Code zusammen getipselt.

Vorab: Habe eine Datenbank, welche verschiedene Adressen enthält.
Manche Adressen sind Zweitstellen von anderen Adressen, diese möchte ich bei der Ausgabe zusammenangezeigt haben - Zweck des Codes.
Der Code überprüft ob der Name oder die Url gleich sind und bildet so ein Array mit zusammengehörenden Adressen.
Danach lädt er für Adressen die keine anderen Stützpunkte haben ein Template (adshow.php),
Adressen die andere Stützpunkte haben werden dann über ein anderes Template (adsshow.php) angezeigt.
Er zeigt mir aber lediglich nur eine Adresse mit Template 1 (adshow.php) an, danach nur noch den Fuß der Seite.
Hoffe Ihr könnt mir helfen a) den Code zu vereinfachen und b) den Fehler zu finden.

Die Fehlerausgabe gibt nur Offset-Fehler wieder die hierzu ja aber irrelevant sind.

der Code:
PHP-Code:

$arr 0;
$abfrage2 "SELECT * FROM Adressen WHERE $where $zusatz '$inf' ORDER BY fname ASC";
$ergebnis2 mysql_query($abfrage2);
while(
$row mysql_fetch_object($ergebnis2))
{
$array[$arr]['id'] = $row->IDadressen;
$array[$arr]['in'] = $row->inet;
$array[$arr]['na'] = $row->fname;
$arr++;
}
$size sizeof($array);
$ar 0;
$te 0;
$zu 0;
while(
$ar <= $size)
{
$ae 0;
$az 1;
$uo 0;
$puma 0;
    while(
$az <= $size)
    {
    if(
$array[$ar]['na'] == $array[$az]['na'] && $array[$ar]['id'] != $array[$az]['id'] && $array[$ar]['na'] != '')
    {
        if(isset(
$checker))
        {
            for(
$i 0$i <= sizeof($checker); $i++)
            {
                if(
$checker[$i] == $array[$ar]['id'])
                {
                    
$puma 1;
                    break;
                }
            }
            if(
$puma == 1)
            {
                
$az++;
            }
            else
            {
                
$ides['ID'][$te]['ids'][$ae] = $array[$az]['id'];
                
$ides['ID'][$te]['hau']['0'] = $array[$ar]['id'];
                
$checker[] = $array[$az]['id'];
                       
$ae++;
                       
$az++;
                
$uo++;
                
$zu++;
            }
        }
        else
        {
            
$ides['ID'][$te]['ids'][$ae] = $array[$az]['id'];
            
$ides['ID'][$te]['hau']['0'] = $array[$ar]['id'];
            
$checker[] = $array[$az]['id'];
                
$ae++;
                
$az++;
            
$uo++;
            
$zu++;
        }
        }
    else if(
$array[$ar]['in'] == $array[$az]['in'] && $array[$ar]['id'] != $array[$az]['id'] && $array[$ar]['in'] != '')
        {
        if(isset(
$checker))
        {
            for(
$i 0$i <= sizeof($checker); $i++)
            {
                if(
$checker[$i] == $array[$ar]['id'])
                {
                    
$puma 1;
                    break;
                }
            }
            if(
$puma == 1)
            {
                
$az++;
            }
            else
            {
                
$ides['ID'][$te]['ids'][$ae] = $array[$az]['id'];
                
$ides['ID'][$te]['hau']['0'] = $array[$ar]['id'];
                
$checker[] = $array[$az]['id'];
                       
$ae++;
                       
$az++;
                
$uo++;
                
$zu++;
            }
        }
        else
        {
            
$ides['ID'][$te]['ids'][$ae] = $array[$az]['id'];
            
$ides['ID'][$te]['hau']['0'] = $array[$ar]['id'];
            
$checker[] = $array[$az]['id'];
                
$ae++;
                
$az++;
            
$uo++;
            
$zu++;
        }
        }
        else
        {
            
$az++;
        }  
    }
if(
$zu != '0')
{
    
$te++;
    
$zu 0;
}
$ar++; 
}

$seite 5
if (isset(
$_GET['offset']))
{
   
$offset intval($_GET['offset']);
}
else
{
   
$offset 0;
}
$u 0;
$ch sizeof($checker);
while(
$u $ch)
{
    if(isset(
$che))
    {
        
$che .= " AND IDadressen != '";
    }
    else
    {
        
$che " AND IDadressen != '";
    }
    
$che .= $checker[$u];
    
$che .= "'";
    
$u++;
}
$a 'a1000';
$s 'a1000000';
$d 'b1000';
$f 'b1000000';
$g 'c1000';
$h 'c1000000';
$abfrage "SELECT * FROM Adressen WHERE $where $zusatz '$inf'$che ORDER BY fname ASC LIMIT $offset$seite";
$ergebnis mysql_query($abfrage);
while(
$row mysql_fetch_object($ergebnis))
   {
$form $row->fzusatz;
if(
$form==1)
{
    
$form "GmbH";
}
else if(
$form==2)
{
    
$form "GmbH & Co. KG";
}
else if(
$form==3)
{
    
$form "KG";
}
else if(
$form==4)
{
    
$form "AG";
}
else if(
$form==5)
{
    
$form "OHG";
}
else
{
    
$form "";
}
$fzusatz $form;
$bland $row->bland;
$abfrage5 "SELECT * FROM Bundesland WHERE IDbundesland = '$bland'";
$ergebnis5 mysql_query($abfrage5);
while(
$rows mysql_fetch_object($ergebnis5))
     {       
          
$bland $rows->bundesland;      
     }
$ya '0';
$ew '0';
while(
$ya sizeof($ides['ID']))
{
    if(
$row->IDadressen == $ides['ID'][$ya]['hau']['0'])
    {
        
$ew '1';
    }
$ya++;
}
if(
$ew != '1')
{
include(
"templates/adshow.php");
}
else
{
include(
"templates/adsshow.php");
}
$a++;
$s++;
$d++;
$f++;
$g++;
$h++;


Beispiel Ausgabe des Arrays "$array":
Code:

Array
(
    [0] => Array
        (
            [id] => 251
            [in] => Algesheimer Bauunternehmung - 55411 Bingen/Gaulsheim
            [na] => Algesheimer
        )

    [1] => Array
        (
            [id] => 414
            [in] =>
            [na] => Balzer + Nassauer
        )

    [2] => Array
        (
            [id] => 413
            [in] => ruhl-baucenter.de
            [na] => Baucenter Ruhl
        )

    [3] => Array
        (
            [id] => 330
            [in] => Home
            [na] => Beinbrech
        )

    [4] => Array
        (
            [id] => 331
            [in] => Home
            [na] => Beinbrech
        )

    [5] => Array
        (
            [id] => 332
            [in] => Home
            [na] => Beinbrech
        )

    [6] => Array
        (
            [id] => 333
            [in] => Home
            [na] => Beinbrech
        )

    [7] => Array
        (
            [id] => 334
            [in] => Home
            [na] => Beinbrech
        )

    [8] => Array
        (
            [id] => 335
            [in] => Home
            [na] => Beinbrech
        )

    [9] => Array
        (
            [id] => 401
            [in] => BIEBER-MARBURG :: Stahlhandel, Baustoffhandel, Stahl, Walzstahl, Edelstahl, Hochbau, Tiefbau, Schüco Stahlsysteme, Davex Stahlträger
            [na] => Bieber + Marburg
        )

    [10] => Array
        (
            [id] => 258
            [in] => Bluemling Baugesellschaft mbH - Home
            [na] => Blümling
        )

    [11] => Array
        (
            [id] => 415
            [in] => Die Homepage der Bubenzer Baustoffe GmbH - Startseite
            [na] => Bubenzer Baustoffe
        )

    [12] => Array
        (
            [id] => 311
            [in] => P.A. Budau
            [na] => Budau
        )

    [13] => Array
        (
            [id] => 78
            [in] => Finger - Betonfertigteile
            [na] => Finger Beton Westerburg
        )

    [14] => Array
        (
            [id] => 386
            [in] => Die Homepage der Baustoffe Krmer GmbH & Co KG - Startseite
            [na] => H.P. Krämer
        )

    [15] => Array
        (
            [id] => 302
            [in] => HEIMS & DÖRGE | Garten- und Landschaftsbau
            [na] => Heims und Dörge RGE
        )

    [16] => Array
        (
            [id] => 385
            [in] => Peter Hoch GmbH & Co KG
            [na] => Hoch
        )

    [17] => Array
        (
            [id] => 265
            [in] => Gemünden Bau
            [na] => Karl Gemünden
        )

    [18] => Array
        (
            [id] => 398
            [in] => REISSER - hat Ihr Bad! - Badausstellungen, Sanit&#x00e4;r-Bedarf und Badm&#x00f6;bel f&#x00fc;r Handwerk und Bauherren.
            [na] => Karl Hornung Baustoffhandel
        )

    [19] => Array
        (
            [id] => 254
            [in] => Firma Mller GmbH CoKG - Enkenbach-Alsenborn, Straenbau, Betonbau, Tiefbau, Unternehmen, Klaeranlagen, Klranlagen, Kanalbau, Rohrvertrieb, Wasserversorgung, Gasleitungsbau, Gasleitung, Fernwrmeleitung, Fernwaerme, Fernwrme.
            [na] => Müller
        )

    [20] => Array
        (
            [id] => 266
            [in] =>
            [na] => Otto Jung
        )

    [21] => Array
        (
            [id] => 404
            [in] =>
            [na] => Richter + Frenzel
        )

    [22] => Array
        (
            [id] => 268
            [in] => Bauunternehmen Schfer
            [na] => Schäfer III
        )

    [23] => Array
        (
            [id] => 280
            [in] => Schmitt GmbH & CO KG
            [na] => Schmitt
        )

    [24] => Array
        (
            [id] => 407
            [in] =>
            [na] => Weidemann
        )

    [25] => Array
        (
            [id] => 255
            [in] =>
            [na] => Wilhelm Faber
        )

    [26] => Array
        (
            [id] => 403
            [in] =>
            [na] => Wilhelm Jost
        )

    [27] => Array
        (
            [id] => 260
            [in] => wolff-bau _ start
            [na] => Wolff Tief- und Straßenbau
        )

)

Beispiel Ausgabe des Arrays "$ides":
Code:

Array
(
    [ID] => Array
        (
            [0] => Array
                (
                    [ids] => Array
                        (
                            [0] => 331
                            [1] => 332
                            [2] => 333
                            [3] => 334
                            [4] => 335
                        )

                    [hau] => Array
                        (
                            [0] => 330
                        )

                )

        )

)


Beispiel Ausgabe des Arrays "$checker":
Code:

Array
(
    [0] => 331
    [1] => 332
    [2] => 333
    [3] => 334
    [4] => 335
)

Beispiel Ausgabe der Abfrage "$abfrage":
Code:

SELECT * FROM Adressen WHERE fzusatz = '2' AND IDadressen != '331' AND IDadressen != '332' AND IDadressen != '333' AND IDadressen != '334' AND IDadressen != '335' ORDER BY fname ASC LIMIT 0, 5
Falls noch irgendwas benötigt wird bitte bescheid sagen :)

Vielen Dank schonmal im voraus, ich weiß es ist viel - aber alleine schaff ichs grad nicht weiter...


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:33 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2023