Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Code optimieren [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Code optimieren


 
RealFairPlayer
25-10-2006, 11:24 
 
Hi zusammen,

Ich habe hier einen PHP Code und wollte ihn mal kurz durchsehen
lassen, sicherlich kann man ihn optimieren nur fehlt mir dafür noch
das wissen - aber learning by doing ist die devise ....

Also meckert mal los :)



<?
mysql_connect("localhost",
"user","password");
mysql_select_db("usr_web4_1");

$sql = "SELECT date, event, description from events WHERE Day LIKE 'Samstag'";
$result = mysql_query($sql);
$idate=1;
$ievent=1;
$idesc=1;
while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '&date'."_sa_". $idate++ . '=';
echo "<b>".'Sa '."</b>";
echo"<b>".($row2['date']."\n")."</b>";
echo '&event'."_sa_". $ievent++ . '=';
echo"<b>".($row2['event']."\n")."</b>";
echo '&desc'."_sa_". $idesc++ . '=';
echo($row2['description']."\n");
}
?>

<?
mysql_connect("localhost",
"user","password");
mysql_select_db("usr_web4_1");

$sql = "SELECT date, event, description from events WHERE Day LIKE 'Freitag'";
$result = mysql_query($sql);
$idate=1;
$ievent=1;
$idesc=1;
while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '&date'."_fr_". $idate++ . '=';
echo "<b>".'Fr '."</b>";
echo"<b>".($row2['date']."\n")."</b>";
echo '&event'."_fr_". $ievent++ . '=';
echo"<b>".($row2['event']."\n")."</b>";
echo '&desc'."_fr_". $idesc++ . '=';
echo($row2['description']."\n");
}
?>

<?
mysql_connect("localhost",
"user","password");
mysql_select_db("usr_web4_1");

$sql = "SELECT date, event, description from events WHERE Day LIKE 'Donnerstag'";
$result = mysql_query($sql);
$idate=1;
$ievent=1;
$idesc=1;
while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '&date'."_th_". $idate++ . '=';
echo "<b>".'Do '."</b>";
echo"<b>".($row2['date']."\n")."</b>";
echo '&event'."_th_". $ievent++ . '=';
echo"<b>".($row2['event']."\n")."</b>";
echo '&desc'."_th_". $idesc++ . '=';
echo($row2['description']."\n");
}
?>


Grüße,
Matze

 
Magic11
25-10-2006, 11:44 
 
die frage die sich mir stellt ist warum dass du insgesamt

3x einen datenbank-connect machst.


mysql_connect("localhost",
"user","password");
mysql_select_db("usr_web4_1");


ich glaub 1x ganz oben würde dir reichen.....

 
Kropff
25-10-2006, 11:59 
 
und die variablen musst du auch nur einmal definieren

$idate=1;
$ievent=1;
$idesc=1;

es wäre u.u. auch möglich nur mit einer abfrage zu arbeiten:
$sql = "SELECT date, event, description, Day from events ORDER BY Day";
und dann schreibst du das ergebnis in ein assoziatives array, was anschließend ausgewertet wird:

while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC))
{
$content[$row2['Day']]['date'][] = $row2['date'];
$content[$row2['Day']]['event'][] = $row2['event'];
}
ist nur eine idee, aber du sparst dir u.u. zwei abfragen

gruß
peter

 
RealFairPlayer
25-10-2006, 12:04 
 
Merci für die Antworten ...

Nun sieht er derzeit so aus ... der Code :)


<?
mysql_connect("localhost",
"web4","2legalize");
mysql_select_db("usr_web4_1");

$sql = "SELECT date, event, description from events WHERE Day LIKE 'Samstag'";
$result = mysql_query($sql);
$idate=1;
$ievent=1;
$idesc=1;
while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '&date'."_sa_". $idate++ . '=';
echo "<b>".'Sa '."</b>";
echo"<b>".($row2['date']."\n")."</b>";
echo '&event'."_sa_". $ievent++ . '=';
echo"<b>".($row2['event']."\n")."</b>";
echo '&desc'."_sa_". $idesc++ . '=';
echo($row2['description']."\n");
}
$sql = "SELECT date, event, description from events WHERE Day LIKE 'Freitag'";
$result = mysql_query($sql);
while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '&date'."_fr_". $idate++ . '=';
echo "<b>".'Fr '."</b>";
echo"<b>".($row2['date']."\n")."</b>";
echo '&event'."_fr_". $ievent++ . '=';
echo"<b>".($row2['event']."\n")."</b>";
echo '&desc'."_fr_". $idesc++ . '=';
echo($row2['description']."\n");
}
$sql = "SELECT date, event, description from events WHERE Day LIKE 'Donnerstag'";
$result = mysql_query($sql);
while ($row2 = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '&date'."_th_". $idate++ . '=';
echo "<b>".'Do '."</b>";
echo"<b>".($row2['date']."\n")."</b>";
echo '&event'."_th_". $ievent++ . '=';
echo"<b>".($row2['event']."\n")."</b>";
echo '&desc'."_th_". $idesc++ . '=';
echo($row2['description']."\n");
}
?>


Weitere Vorschläge oder kann man den so lassen?

Grüße dun danke,

Matthias

 
Kropff
25-10-2006, 12:07 
 
Weitere Vorschläge
siehe meines geänderten thread

gruß
peter


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:55 Uhr.