SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 26.01.2008, 14:16:51
Pinkrabbit Pinkrabbit ist offline
Anfänger
 
Registriert seit: Jan 2008
Beiträge: 4
php / header / image / sql

Hi Gulli User

Habt ihr eine ahnung wie ich diese script ein bisschen
schneller machen kann also optimieren ???

Mit dem header in der sql abfrage bin ich mir auch net
ganz so sicher. z.B der header:

header("Content-type: $image_format");
readfile($image_path);

Kann man des hier so stehen lassen. Oder gibt es noch
zusätzlich wichtige Informationen zum header ???

Die Sql abfrage gibst es da noch einen trick wie man
den sql befehl schneller machen kann ??

thx

PHP-Code:
<?php
if (isset($_GET['i'])) {
$i $_REQUEST['i'];
define("DB_USERNAME""yscsc");
define("DB_PASSWORD""yscys");
define("DB_HOST""cyssy");
define("DB_NAME""yscysc");

class 
db {
function 
db_connect() {
$db mysql_connect(DB_HOST,DB_USERNAME,DB_PASSWORD);
$db_connect mysql_select_db(DB_NAME,$db); }

function 
db_unconnect() {
mysql_close();
}
}
$db = new db;
$db->db_connect();

$sql "SELECT image_name FROM meine_images WHERE image_name='$i' LIMIT 0,1";
$a mysql_query($sql);
$b mysql_num_rows($a);
if (
$b == "1") {
$da mysql_fetch_array($a);
$image_name $da['image_name'];
$image_format $da['image_format'];
$image_save $da['image_save'];

switch(
$image_save) {
      case 
"1"$pa="http://www.example.com/files/"; break;
      default: 
$pa="http://www.example.com/files/"; }
$image_path $pa.$image_name;
$db->db_unconnect();

header("Content-type: $image_format");
readfile($image_path); }
else { } }
?>
Mit Zitat antworten
  #2  
Alt 27.01.2008, 03:06:19
ascer ascer ist offline
Anfänger
 
Registriert seit: Oct 2006
Beiträge: 137
AW: php / header / image / sql

also wenn du es noch nicht hast dann würde ich mal sagen INDIZES in deine DB bauen, oder vielmer einen INDEX auf `image_name` da du ja nur 1 Datensatz aus der DB lädst...
da ist ein Index auf jedenfall angebracht...

achja und ich würde den default bei dir in der Switch-Anweisung als erstes bauen, also vor den case "1"...denn, zumindest "as far as i know", wird die switch anweisung ja von oben nach unten durchlaufen und wenn dein default tatsächlich öfter genutzt wird als dein "1" läuft es ein bisschen ( also vielleicht 1ms oder so^^ wenn überhaupt^^ ) schneller...

oh und wenn nicht nötig kannst du dir das db_unconnect sparen, das kostet zwar auch nicht viel zeit aber ein bisschen zeit auf jedenfall ihn das ganze aufbauen zu lassen und sobald ein script komplett durchlaufen ist wird die Verbindung zur Datenbank sowieso getrennt...

und deine DB-Klasse tut ja auch nicht wirklich viel, soll heissen ein ganz einfach gehaltenes connect ( ohne function oder class ) dürfte zwar auch nur wenn überhaupt 1ms mehr perfomance geben, aber ist auf jedenfall auch performanter und da deine klasse ja echt nicht mehr tut in dem skript kannste es auch weglassen und ganz normal schreiben also in keine klasse oder funktion...


gruß,
Ascer
Mit Zitat antworten
  #3  
Alt 27.01.2008, 03:11:04
ascer ascer ist offline
Anfänger
 
Registriert seit: Oct 2006
Beiträge: 137
AW: php / header / image / sql

PS: was ich noch gar nicht gesehen hab deine switch anweisung tut ja in beiden fällen dasselbe...soll heissen weg mit der Switch-Anweisung = 1 abfrage weniger^^

und nimm für den pfad ne konstante ganz ohne variable wenn du die variable sowieso nich änderst...und zwar konstant in der deklaration...
sprich lass das $pa ganz weg und mach es so:
$image_path = "http://www.example.com/files/".$image_name;

das spart dann 1 variablen deklaration und die ganze switch-anweisung ein

Geändert von ascer (27.01.2008 um 03:14:13 Uhr)
Mit Zitat antworten
  #4  
Alt 27.01.2008, 17:21:13
Pinkrabbit Pinkrabbit ist offline
Anfänger
 
Registriert seit: Jan 2008
Beiträge: 4
AW: php / header / image / sql

PHP-Code:
<?php
if (isset($_GET['i'])) {
$i $_GET['i'];
define("DB_USERNAME""yscsc");
define("DB_PASSWORD""yscys");
define("DB_HOST""cyssy");
define("DB_NAME""yscysc");

function 
db_connect() {
$db mysql_connect(DB_HOST,DB_USERNAME,DB_PASSWORD);
$db_connect mysql_select_db(DB_NAME,$db); }
db_connect();

$sql "SELECT image_name FROM meine_images WHERE image_name='$i' LIMIT 0,1";
$a mysql_query($sql);
$b mysql_num_rows($a);

if (
$b == "1") {
$da mysql_fetch_array($a);
$image_name $da['image_name'];
$image_format $da['image_format'];
$image_save $da['image_save'];

switch(
$image_save) {
    default: 
$image_path "http://www.example.com/files/".$image_name;
    case 
"1"$image_path "http://www.example.com/files/".$image_name; break; }

header("Content-type: $image_format");
readfile($image_path); }
else { } die; }
?>
Du meinst des so ??
Des mit dem INDEX auf `image_name` wie mach ich so was ???
Wenn ich einen INDEX erstelle verändert sich dann auch das feld ???
Glaubst du des ist für einen Pichoster zu langsam
wenn ich eine hatccess-Datei mit folgendem Inhalt
ins Verzeichnis kopiere:

Inhalt:
RewriteEngine on
RewriteRule ^(.*)\.(jpg|jpeg|JPG|JPEG|Jpeg|Jpg|Gif|GIF|gif|PNG|png|Png)$ i.php?i=$1.$2

Geändert von Pinkrabbit (27.01.2008 um 17:24:54 Uhr)
Mit Zitat antworten
  #5  
Alt 31.01.2008, 15:50:27
Tumasch Tumasch ist offline
Junior Member
 
Registriert seit: Dec 2007
Beiträge: 151
AW: php / header / image / sql

1. benutz mysql_pconnect

2. ersetz

switch($image_save) {
default: $image_path = "http://www.example.com/files/".$image_name;
case "1": $image_path = "http://www.example.com/files/".$image_name; break; }


durch

$image_path = "http://www.example.com/files/".$image_name;
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
sql Abfrage über php funzt nicht karotte PHP Grundlagen 10 28.12.2007 19:23:50
Welches Buch für PHP mit SQL Datenbank? masterplan PHP Grundlagen 4 18.12.2007 01:21:04
Stammbaum mit Sql und Php coden. aber wie? Neo.P5 PHP Grundlagen 5 11.07.2006 12:51:01
PHP Header in Kombo mit anderem Skript - Problem Natheedo PHP für Fortgeschrittene und Experten 0 19.12.2005 01:40:21
PHP SQL Fehler kevintest1 PHP Grundlagen 1 03.12.2002 19:31:31


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:50:22 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt