php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 07-04-2009, 14:56
RamonaS
 Registrierter Benutzer
Links : Onlinestatus : RamonaS ist offline
Registriert seit: Mar 2009
Beiträge: 177
RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Standard Matix mit PHP?

Hallo,

ich möchte diesen code kürzen.
Für die ensprechende zufallszahl soll dann die anzahl der punkte gesetzt werden.

Meine idee ist ja nicht schlecht, aber ich merke gerade das ich dafür viel mehr IF-Abfragen brauche als mir lieb ist!

Gibts da eine elegante Lösung, ich möchte nicht so einen riesigen code dafür haben


PHP-Code:
  $nr=range(1,6); shuffle($nr); # 6 Zufallszahlen erzeugen
  
$ol=0$ml=0$ul=0$mm=0$or=0$mr=0$ur=0;

  if(
$nr[0]==1){$mm=1;} # Nur die 1 des Würfels
  
if($nr[0]==2){$ul=1$or=1;} # Die 2 => unten links und oben rechts
  
if($nr[0]==3){$ul=1$mm=1$or=1;}
  if(
$nr[0]==4){$ol=1$or=1$ul=1$ur=1;}
  if(
$nr[0]==5){$ol=1$or=1$ul=1$ur=1$mm=1;}
  if(
$nr[0]==6){$ol=1$ml=1$ul=1$or=1$mr=1$ur=1;} # Alle Punkte, ausser dem in der mitte

  # Punkte für Würfel 1 (links)
  
if($mm==1){imageFilledRectangle($im,3,3,7,5,$c); imageFilledRectangle($im,4,2,6,6,$c);} # Punkt oben links
  
if($mm==1){imageFilledRectangle($im,3,9,7,11,$c); imageFilledRectangle($im,4,8,6,12,$c);} # Punkt mitte links
  
if($mm==1){imageFilledRectangle($im,3,15,7,17,$c); imageFilledRectangle($im,4,14,6,18,$c);} # Punkt unten links
  
if($mm==1){imageFilledRectangle($im,8,9,12,11,$c); imageFilledRectangle($im,9,8,11,12,$c);} # Punkt mitte rechts
  
if($mm==1){imageFilledRectangle($im,13,3,17,5,$c); imageFilledRectangle($im,14,2,16,6,$c);} # Punkt oben rechts
  
if($mm==1){imageFilledRectangle($im,13,9,17,11,$c); imageFilledRectangle($im,14,8,16,12,$c);} # Punkt mitte rechts
  
if($mm==1){imageFilledRectangle($im,13,15,17,17,$c); imageFilledRectangle($im,14,14,16,18,$c);} # Punkt unten rechts 
__________________
ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Mit Zitat antworten
  #2 (permalink)  
Alt 07-04-2009, 15:12
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Habe neulich einen Würfel in ActionScript gezeichnet. Kannst du dir ja mal ansehen und entsprechend übersetzen:
PHP-Code:
public var radius:uint 3;
public function 
drawscore:uint ):void {
    if( 
score<=) {
        
score 1;
    }
    else if( 
score>) {
        
score 6;
    }
    
    
graphics.clear();
    
    var 
width_2:uint width 2;
    var 
width_4:uint width 4;
    var 
width_3:uint = (width 3) / 4;
    var 
height_2:uint height 2;
    var 
height_4:uint height 4;
    var 
height_3:uint = (height 3) / 4;
    
    
graphics.lineStyle0);
    
graphics.beginFill);
    
    switch( 
score ) {
        case 
1:
            
drawPointwidth_2height_2 );
            break;
        case 
2:
            
drawPointwidth_4height_4 );
            
drawPointwidth_3height_3 );
            break;
        case 
3:
            
drawPointwidth_2height_2 );
            
drawPointwidth_4height_4 );
            
drawPointwidth_3height_3 );
            break;
        case 
4:
            
drawPointwidth_4height_4 );
            
drawPointwidth_4height_3 );
            
drawPointwidth_3height_4 );
            
drawPointwidth_3height_3 );
            break;
        case 
5:
            
drawPointwidth_2height_2 );
            
drawPointwidth_4height_4 );
            
drawPointwidth_4height_3 );
            
drawPointwidth_3height_4 );
            
drawPointwidth_3height_3 );
            break;
        case 
6:
            
drawPointwidth_4height_4 );
            
drawPointwidth_4height_2 );
            
drawPointwidth_4height_3 );
            
drawPointwidth_3height_4 );
            
drawPointwidth_3height_2 );
            
drawPointwidth_3height_3 );
            break;
    }
}

public function 
drawPointx:uinty:uint ):void {
    
graphics.drawCirclexyradius );

Mit Zitat antworten
  #3 (permalink)  
Alt 07-04-2009, 15:17
Wurzel
 Master
Links : Onlinestatus : Wurzel ist offline
Registriert seit: Jul 2002
Ort: double-u-upper-valley
Beiträge: 7.477
Wurzel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

blöde frage:

warum lädt man nicht einfach eine fertige grafik, anstatt dauernd ein bild mit 1-6 punkten neu zu pinseln?
__________________
Kissolino.com
Mit Zitat antworten
  #4 (permalink)  
Alt 07-04-2009, 15:21
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Wurzel
blöde frage:

warum lädt man nicht einfach eine fertige grafik, anstatt dauernd ein bild mit 1-6 punkten neu zu pinseln?
OffTopic:
Da frag' ich mich grad auch ... aber vielleicht weil jedes Mal neuzeichnen ist so cool
Mit Zitat antworten
  #5 (permalink)  
Alt 07-04-2009, 15:30
schmalle
  Ich Root, Du nix
Links : Onlinestatus : schmalle ist offline
Registriert seit: Jun 2001
Ort: Egelsbach FFM
Beiträge: 9.170
schmalle ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was ist ein Würfel?
__________________
h.a.n.d.
Schmalle

http://impressed.by
http://blog.schmalenberger.it



Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
... nur ohne :-)
Mit Zitat antworten
  #6 (permalink)  
Alt 07-04-2009, 16:58
RamonaS
 Registrierter Benutzer
Links : Onlinestatus : RamonaS ist offline
Registriert seit: Mar 2009
Beiträge: 177
RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Zitat:
warum lädt man nicht einfach eine fertige grafik, anstatt dauernd ein bild mit 1-6 punkten neu zu pinseln?
Ist eindeutig cooler

Nee, ich hab ein haufen von den bildchen und jetzt wollte ich die mal abschaffen....ewig rumsuchen, welches bildchen gehört zu welchem script.....ausserdem ist dieses PNG-Format auch wesentlich kleiner und grafisch perfekt...ganz zu schweigen von dem verwaschenen JPG-Format.


@PHP-Desaster
Das hatte ich auch so vor mit dem switch case, aber da brauche ich eben 6 mal den code und das ist dann schon etwas groß.

Ich dachte man kann da sowas wie ne matrix machen, wird aber codemäßig auf die gleiche länge rauskommen, denke ich.

Naja kann man nix machen
Danke an die helfenden Hände
__________________
ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Mit Zitat antworten
  #7 (permalink)  
Alt 07-04-2009, 17:08
schmalle
  Ich Root, Du nix
Links : Onlinestatus : schmalle ist offline
Registriert seit: Jun 2001
Ort: Egelsbach FFM
Beiträge: 9.170
schmalle ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von RamonaS
...ewig rumsuchen, welches bildchen gehört zu welchem script.....
ich hab mal gehört man können mit passenden Dateinamen und einer gewissen Ordnerstruktur dieses Problem lösen. Aber trotz langjähriger Erfahrung in diesem Business habe ich natürlich keine Ahnung. Es würde mir auch niemand glauben, dass solche Spielchen ein potentieller Performancekiller sind, weil ich noch nie einen Server gesehen habe, auf dem mehr als drei Leute gleichzeitig unterwegs sind.

Schönen Feierabend ;-)
__________________
h.a.n.d.
Schmalle

http://impressed.by
http://blog.schmalenberger.it



Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
... nur ohne :-)
Mit Zitat antworten
  #8 (permalink)  
Alt 07-04-2009, 17:26
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von RamonaS
Ist eindeutig cooler

Nee, ich hab ein haufen von den bildchen und jetzt wollte ich die mal abschaffen....ewig rumsuchen, welches bildchen gehört zu welchem script.....
Wenn du ewig rumsuchen musst, würd ich an deiner Stelle mal die Ordnerstruktur überdenken.
Mit Zitat antworten
  #9 (permalink)  
Alt 07-04-2009, 17:45
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Du kannst den Code zum Zeichnen eines Würfels doch wiederverwenden, indem du einen X- und Y-Offset mit hineinimplementierst.

Aber die anderen haben natürlich recht, vielleicht solltest du das Zeichnen lieber lassen und Bilder verwenden.
Mit Zitat antworten
  #10 (permalink)  
Alt 07-04-2009, 20:16
RamonaS
 Registrierter Benutzer
Links : Onlinestatus : RamonaS ist offline
Registriert seit: Mar 2009
Beiträge: 177
RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Ok also ich hab das jetzt so verstanden, wer die image-funktion von php benutzt bekommt grundsätzlich 239 jahre einzelhaft und muß in dieser zeit asp lernen :-)

Wer bilder braucht für captcha der soll sich 13 stück anfertigen und diese dann per zufall ausgeben.

Ordnerstruktur überdenken:
Ähmm hab ich doch, hab soweit alles bilderzeugs in einen einzigen ordner geworfen, dann weiß ich wo der kram zu finden ist....aber welches bildchen zu welchem script gehört weiß ich immer noch nicht.

wie soll ich ein bild so benennen das ich es zuordnen kann....einige bilder werden im kontakt.php, gaestebuch.php und in noch 3-10 anderen scripten benutzt...

Noting for notgood :-)
__________________
ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Mit Zitat antworten
  #11 (permalink)  
Alt 07-04-2009, 20:29
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Ok also ich hab das jetzt so verstanden, wer die image-funktion von php benutzt bekommt grundsätzlich 239 jahre einzelhaft und muß in dieser zeit asp lernen :-)
nur wenn sie exzessiv benutz wird
Zitat:
Wer bilder braucht für captcha der soll sich 13 stück anfertigen und diese dann per zufall ausgeben.
dafür gibt es andere lösungen. mit nur einem(!) bild
Zitat:
wie soll ich ein bild so benennen das ich es zuordnen kann....einige bilder werden im kontakt.php, gaestebuch.php und in noch 3-10 anderen scripten benutzt...
da muss man sich ggf. mal die mühe machen und aufräumen. unterordner wären eine lösung.

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #12 (permalink)  
Alt 07-04-2009, 20:52
RamonaS
 Registrierter Benutzer
Links : Onlinestatus : RamonaS ist offline
Registriert seit: Mar 2009
Beiträge: 177
RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Zitat:
nur wenn sie exzessiv benutz wird
Wird es ja nicht, es geht um die erzeugung eines einzigen bildes, da sind dann 3 solche würfelchen drinne.

Nachdem ich bei google-iamge sogar meine unwichtigen würfelbilder gefunden habe, dachte ich mir ich stell das mal ab :-)

Zitat:
dafür gibt es andere lösungen. mit nur einem(!) bild
Sag ich doch...meine idee wäre 1 bild statt 6 stück und bei jedem aufruf oder f5 sind da andere würfelzahlen drinn.

Zitat:
da muss man sich ggf. mal die mühe machen und aufräumen. unterordner wären eine lösung.
Das hatte ich soweit alles fertig, mit unzähligen unterordner und richtigem durcheinander!
Ich habe jetzt ein ordner der nennt sich module, und dort sind nur die php scripte drinn...alle bilder, smilies usw habe ich zentrall alle zusammen in einem einzigen ordner drin....da ist halt der nachteil, man weiß nicht immer welchers bild jetzt von wievielen scripten benutzt wird.....naja nach 2 wochen weiß ich das noch aber nach 2 monaten wirds langsam kritisch
__________________
ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit
Mit Zitat antworten
  #13 (permalink)  
Alt 07-04-2009, 22:55
Peacie
 Registrierter Benutzer
Links : Onlinestatus : Peacie ist offline
Registriert seit: Nov 2003
Beiträge: 341
Peacie ist zur Zeit noch ein unbeschriebenes Blatt
Peacie eine Nachricht über ICQ schicken Peacie eine Nachricht über AIM schicken Peacie eine Nachricht über Yahoo! schicken
Standard

wieviel langeweile kann man haben

hab grad mal quick and dirty ein script gebastelt, was einen würfel per zufall erstellt. das ganze könnte man jetzt noch strukturieren und in eine funktion bauen, aber dafür hab ich grad keine lust

PHP-Code:

$zahl
=mt_rand(1,6);

// positionen der Punkte
$w[1]=array(3,3);
$w[2]=array(3,9);
$w[3]=array(3,15);
$w[4]=array(13,3);
$w[5]=array(13,9);
$w[6]=array(13,15);
$w[7]=array(8,9);
// Zusammensetzen der Punkte
$dw[1]=7;
$dw[2]="1,6";
$dw[3]="1,6,7";
$dw[4]="1,3,4,6";
$dw[5]="1,3,4,6,7";
$dw[6]="1,2,3,4,5,6";

$wuerfel=explode(",",$dw[$zahl]);

Header("Content-type: image/png");
$image imagecreate(21,21);
$d=imagecolorallocate($image,255,255,255);
$c=imagecolorallocate($image,0,0,0);
imagealphablending($image1);
imagecolortransparent($image); 

for (
$i=0;$i<=count($wuerfel)-1;$i++)
{
$x=$w[$wuerfel[$i]][0];$y=$w[$wuerfel[$i]][1];
imagerectangle($image,0,0,20,20,$c);
imagefilledrectangle($image,$x,$y,$x+4,$y+2,$c);
imagefilledrectangle($image,$x+1,$y-1,$x+3,$y+3,$c);
}
imagepng($image,"./wuerfel.png");
readfile("./wuerfel.png"); 
__________________
Mibau Datendesign - Online Ferienwelt

Geändert von Peacie (07-04-2009 um 22:57 Uhr)
Mit Zitat antworten
  #14 (permalink)  
Alt 07-04-2009, 23:11
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Eine Minute googeln, 30 Sekunden programmieren. Fertig.
PHP-Code:
<?php
header
('Location: http://www.random.org/dice/dice' rand(16) . '.png');
?>
Würde mir die Grafiken natürlich auf den eigenen Server ziehen bzw. eigene erstellen und statt Location den richtigen Content-Type Header senden gefolgt von einem readfile(). Mehr Mühe ist die Sache doch nicht wert.
Mit Zitat antworten
  #15 (permalink)  
Alt 07-04-2009, 23:15
Peacie
 Registrierter Benutzer
Links : Onlinestatus : Peacie ist offline
Registriert seit: Nov 2003
Beiträge: 341
Peacie ist zur Zeit noch ein unbeschriebenes Blatt
Peacie eine Nachricht über ICQ schicken Peacie eine Nachricht über AIM schicken Peacie eine Nachricht über Yahoo! schicken
Standard

wo ist jetzt bitte der unterschied zu den eigenen bildern auf dem server, die der te ja nicht will?
__________________
Mibau Datendesign - Online Ferienwelt
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:09 Uhr.