php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.06.2005, 18:09  
Gast
 
Beiträge: n/a
Standard Vereinfachung des Codes / Gemeinsame Variable möglich?

Halli, hallo!
Ich bin eben zufällig über euer hübsches Forum gestolpert und hab mir gedacht, dass mir hier bestimmt jemand helfen kann
Dazu muss ich sagen, dass ich absoluter Newbee in PHP bin und mir meinen Code zusammenkopiert habe.

Ich starte auf einer Seite eine Datenbankabfrage per MySQL und biete gleichzeitig die Möglichkeit an, ein PDF zu generieren (den Code dafür hab ich aus Xampp). Leider ist es im Moment noch notwendig, die Abfrage jeweils für die PDF-Generierung UND für die eigentliche Anzeige in einer Tabelle zu pflegen.

Gibt es eine Möglichkeit, dass beide Scripte auf die selbe Variable zugreifen???
Ich hoffe, ich hab mich einigermaßen verständlich ausgedrückt, sorry, wenn mir einige Fachbegriffe noch nicht geläufig sind :wink:


Das Script für die PDF-Generierung:
PHP-Code:
<?
    
if($action=="getpdf")
    {
        
mysql_connect("localhost","root","");
        
mysql_select_db("helpdesk");

        include (
'class.ezpdf.php');
        
$pdf =& new Cezpdf();
        
$pdf->selectFont('../pdf/fonts/Helvetica');

        
$pdf->ezText('Bericht',14);
        
$pdf->ezText('© SK03',10);
        
$pdf->ezText('',12);
        if ( 
$type == 1)
        {
            
$result=mysql_query("SELECT raum, aufgabe, wermacht, anfangsdatum, enddatum, erledigt FROM jobs WHERE erledigt='nein'");
        }
        elseif ( 
$type == 2)
        {
            
$result=mysql_query("SELECT raum, aufgabe, wermacht, anfangsdatum, enddatum, erledigt FROM jobs WHERE raum='016'");
        }
        
$i=0;
        while( 
$row=mysql_fetch_array($result) )
        {
            
$data[$i]=array('raum'=>$row['raum'],'aufgabe'=>$row['aufgabe'],'wermacht'=>$row['wermacht']);
            
$i++;
        }

        
$pdf->ezTable($data,"","",array('xPos'=>'left','xOrientation'=>'right','width'=>500));

        
$pdf->ezStream();
        exit;

    }
?>

Script für die HTML-Tabelle:
PHP-Code:
<form method="post" action="<?php echo $PHP_SELF?>">
<select name='type'>
<?php
    
echo "<option value='1'";
    if ( 
$type==) { echo "selected='selected'"; }
    echo 
">Nummer 1</option>";
    echo 
"<option value='2'";
    if ( 
$type==) { echo "selected='selected'"; }
    echo 
">Nummer 2</option>";
    echo 
"<option value='x'>usw....</option>";
?>
</select>
<input type="Submit" name="submit" value="anzeigen">

<?php
    mysql_connect
("localhost","root","") or die("Verbindung zu MySQL gescheiter!");
    
mysql_select_db("helpdesk") or die("Datenbankzugriff gescheitert!");
    if ( 
$submit )
    {
        if ( 
$type == )
        {
            
$sql="SELECT raum, aufgabe, wermacht, anfangsdatum, enddatum, erledigt FROM jobs WHERE erledigt='nein'";
        }
        elseif ( 
$type == )
        {
            
$sql="SELECT raum, aufgabe, wermacht, anfangsdatum, enddatum, erledigt FROM jobs WHERE raum='016'";
        }
        else
        {
            return;
        }
        
$result=mysql_query($sql);
        
$zeilen=mysql_num_rows($result);
    }
?>



<table border="0" width="600" cellspacing="0" cellpadding="3"><tr>
<td bgcolor="#536D9D"><p class="weiss fett">Raum</p></td>
<td bgcolor="#536D9D"><p class="weiss fett">Aufgabe</p></td>
<td bgcolor="#536D9D"><p class="weiss fett">Wer macht's</p></td>
<td bgcolor="#536D9D"><p class="weiss fett">Anfangsdatum</p></td>
<td bgcolor="#536D9D"><p class="weiss fett">Enddatum</p></td>
</tr>
<?php
    
if ( $result )
    {
        while (
$row=mysql_fetch_assoc($result))
        {
            echo 
"<tr><td>$row[raum]</td><td>$row[aufgabe]</td><td>$row[wermacht]</td><td>$row[anfangsdatum]</td><td>$row[enddatum]</td></tr>";
        }
        
mysql_close();
    }
    else
    {
        echo 
"<tr><td colspan='5'>Abfrage auswählen</td></tr>";
    }
?>
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 19.06.2005, 16:53  
Erfahrener Benutzer
 
Registriert seit: 09.09.2004
Beiträge: 716
PHP-Kenntnisse:
Anfänger
Kort zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Bitte [php]-tags anstatt der [code]-tags verwenden!
Und ich sehe viel Murks:

Bitte an den Anfang des Scriptes
[php:838a58b621]<?php
error_reporting(E_ALL);
?>[/php:838a58b621]
schreiben, damit alle Fehler ausgegeben werden.

Außerdem sollte man register_globals nicht mehr verwenden, sondern anstatt dessen die Suberglobalen $_POST und $_GET.
__________________
"Only wimps use tape backup: real men just upload their important stuff on ftp, and let the rest of the world mirror it." - Linus Torvalds, 1996
Kort ist offline  
Alt 19.06.2005, 17:32  
Gast
 
Beiträge: n/a
Standard

@Kort: Danke für die Antwort und den Tipp mit dem php-Tag...da war ich wohl zu blind *ggg*
Fehler in dem Sinne habe ich ja nicht...wie gesagt: suche nur eine Möglichkeit, eine Variable für beide Scripts zu benutzen! Und von "Superglobalen" hab ich noch nie was gehört, sorry
 
 


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
Warum wird Variable nicht übergeben??? Anuschka PHP Tipps 2005 2 06.01.2005 13:22

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ejemplos $pdf->eztable, gemeinsame variable

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