tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
15
ZUGRIFFE
1820
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    Ich habe da son ein kleines Problemchen. Ich möchte aus der Auflösung des Users das Verhältnis (4:3, 16:9, etc.) berechnen lassen. Dazu gibt es 2 Probleme: Wie bekommen ich die Daten von JavaScript in PHP (eigentlich nicht möglich, oder?) und wie lass ich PHP das ganze ausrechnen? Das eigentliche Problem ist, wie kürzt man mit PHP? Wenn ich im Taschenrechner 1024 / 768 eingebe, kommt 1,333333333 raus, ein druck auf die Kürzentaste, und auf dem Display steht 4/3. Wie mach ich das mit PHP?

    mfg
    Klink
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  2. #2
    alexXP alexXP ist offline Mitglied
    Registriert seit
    May 2004
    Ort
    ja
    Beiträge
    18
    mann ist ja ganz schön ein projekt dass du da vor hast

    Ich weiß da so weit mal nichts

    Aber werd mich mal schlau machen, vielleicht find ich ja was.
    Wenn ich was hab poste ich es

    Bin schon auf die Lösung gespannt
     

  3. #3
    Avatar von DrachenKaiser
    DrachenKaiser DrachenKaiser ist offline Mitglied Bronze
    Registriert seit
    Sep 2003
    Ort
    Ramsin
    Beiträge
    40
    Hallo,
    für die Übergabe von Javascript zu php würde ich,Javascript den Wert in einen Link
    schreiben lassen.Der dann per meta Weiterleitung den php Script übergeben wird und
    für die Berechnung würde ich es so machen.
    PHP-Code:
    <?php
    $a
    =1024;
    $b=768;

    for(
    $i=1;$i<11;$i++)
    {
                    
    $c=$a/$i;
                    
    $d=$b/i;
                    if(
    is_int($c)  && is_int($d))
                    {
                               break;
                    }
    }
    echo 
    $a.'/'.$b;
    ?>
    Geändert von DrachenKaiser (23.05.04 um 21:15 Uhr)
     

  4. #4
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    Wenn ich dein Script (angepasst, kl. Fehler) kommt beides mal 1024/768 raus
    PHP-Code:
    <?php
    $a
    =1024
    $b=768

    for(
    $i=1;$i<11;$i++) 

                    
    $c=$a/$i
                    
    $d=$b/$i
                    if(!
    is_double($c)  && !is_double($d)) 
                    { 
                               break; 
                    } 

    echo 
    $a.'/'.$b.'<br>'
    echo 
    $c.'/'.$d.'<br>'
    ?>
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  5. #5
    Avatar von DrachenKaiser
    DrachenKaiser DrachenKaiser ist offline Mitglied Bronze
    Registriert seit
    Sep 2003
    Ort
    Ramsin
    Beiträge
    40
    Hallo,
    das hier sollte gehen.
    Es lag an der Division durch 1.
    PHP-Code:
    <?php
    $a
    =1024
    $b=768

    for(
    $i=2;$i<11;$i++)

                    
    $c=$a/$i
                    
    $d=$b/$i
                    if(!
    is_double($c)  && !is_double($d)) 
                    { 
                               break; 
                    } 

    echo 
    $c.'/'.$d.'<br>'
    ?>
     

  6. #6
    Registriert seit
    Mar 2004
    Beiträge
    490
    Schau mal hier,

    im Source steht, wie es mit JavaScript geht

    http://home.t-online.de/home/arndt.b...hrechnung2.htm
     

  7. #7
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Zur Verhältnisberechnung: den ggT der beiden Zahlen mit dem euklidischen Algorithmus bestimmen und damit kürzen:

    PHP-Code:
    <?php

    function ggT($x$y)
    {
        do {
            
    $rest $x $y;
            
    $x $y;
            
    $y $rest;
        } while (
    $rest != 0);

        return 
    $x;
    }

    $a=1024;
    $b=768;

    $ggt ggT($a$b);
    $a /= $ggt;
    $b /= $ggt;

    printf("Verhaeltnis %d:%d"$a$b);

    ?>
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  8. #8
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    Ich habe mir mal den Quellcode rausgesucht, aber da steige ich ja voll nicht durch, aber ich will es irgendwie gebacken bekommen...
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  9. #9
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    Danke Reima, das funktioniert ja sogar Aber wie hole ich jetzt aus dem JavaScript die Auflösung raus und gebe sie PHP, soll ja kein Link da sein, wo das ganze berechnet wird, osndern auf einer Seite? Ich werde da jetzt erstmal rumprobieren...
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  10. #10
    FireFlow FireFlow ist offline Mitglied Gold
    Registriert seit
    Feb 2004
    Beiträge
    213
    Mal so eine extrem blöde Frage:

    Warum rechnest du das Verhältniss nicht auch einfach per JavaScript aus das wär doch viiel einfacher!
     
    --//--//--// My StillLife! //--//--//--
    Obere URL dient nur als Google-Push )

  11. #11
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    werde ich wohl auch machen müssen, aber von JavaScript hab eigentlich keine Ahnung. Da werde ich erst mal guggen, wie ich die Formel von oben in JavaScript rüberschreibe. Aber jetzt hab ich erstmal Schule...
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  12. #12
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    Schule vorbei und seit 1 1/2 Stunden keine Ahnung wie ich das machen soll. Einfach rechnen bekomm ich ja noch hin, aber das mit dem euklidischen Algorithmus bekomm ich nicht gebacken. Möchte deswegen nicht nen Thread im JavaScript aufmachen. Könnte das jemand hier machen, bitte?

    mfg
    Klink
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  13. #13
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Sehr quick & dirty, aber das Prinzip sollte klar sein...

    PHP-Code:
    <?php
    function ggT($x$y)
    {
        do {
            
    $rest $x $y;
            
    $x $y;
            
    $y $rest;
        } while (
    $rest != 0);

        return 
    $x;
    }

    if (isset(
    $_GET['w']) && isset($_GET['h'])) {
        
    $w=$_GET['w'];
        
    $h=$_GET['h'];
        
    printf("document.write('W: %d - H: %d<br />');"$w$h);
        
        
    $ggt ggT($w$h);
        
    $w /= $ggt;
        
    $h /= $ggt;

        
    printf("document.write('= %d:%d');"$w$h);
    } else {
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
    <head>
    <title>Aufloesung</title>
    </head>

    <body>
    <script type="text/javascript">
    w = screen.width;
    h = screen.height;
    document.write("<script language=\"JavaScript\" type=\"text\\/javascript\\" src=\\"<?=$PHP_SELF?>?w="+w+"&h="+h+"\"><\\/script>");
    </script>
    </body>
    </html>
    <? ?>
    Das JavaScript ab Zeile 33 besorgt sich die Breite und Höhe des Bildschirms. Per document.write schreibt es dann einen weiteren Aufruf eines JavaScripts in den HTML-Code, bei der als Quelle eine PHP-Datei angegeben wird, der man die Pixeldimensionen per GET übergibt. (Passiert alles auf dem Client!) Die aufgerufene PHP-Datei (in dem einfachen Beispiel hier ist es die selbe wie die, in der der HTML-Code steht) kann dann die übergebenen Werte weiterverarbeiten. Insbesondere kann man sie auch auf dem Client wieder anzeigen lassen, indem man die entsprecheneden JavaScript-Befehle ausgibt (wir binden die PHP-Datei ja als Quelle eines JavaScripts ein).

    Somit sollten dann wohl alle Klarheiten beseitigt sein
    Geändert von Matthias Reitinger (24.05.04 um 22:17 Uhr)
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  14. #14
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    Danke für die Mühe, aber es funktioniert nicht. Ich kenne mich mit JavaScript nicht aus, aber kann es sein, das zwei ineinander gesteckte Scripts nicht laufen? Wenn ich jetzt
    PHP-Code:
    <script type="text/javascript"
    <
    script type="text/javascript">
    document.write("test");
    </script>
    </script> 
    das in meinen Browser einhacke, dann kommt nichts raus. Bei der Quelltextbetrachtung vom IE ist alles wie oben gezeigt, beim FireFox sieht das dann so aus:
    PHP-Code:
    <script type="text/javascript"
    <
    script type="text/javascript">
    document.write("test");
    </script> 
    Da sieht man, das das zweite <script type="text/javascript"> übergangen, bzw. nicht als JS Anweisung behandelt wird. Von mir aus kann man das Ganze jetzt ins JavaScipt Forum verschieben, hauptsache, ich bekomme ein funktionierende Lösung zustande!
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

  15. #15
    Registriert seit
    Feb 2004
    Ort
    Leinfelden-Echterdingen
    Beiträge
    781
    HALT Komando zurück. Ich habs jetzt so gelößt: in der Zeile:
    document.write("<script language=\"JavaScript\" type=\"text/javascript\" src=\"test.php?w="+w+"&h="+h+"\"></script>"); beim </script> ein Leerzeichen zw. / und s!
    Das ganze in eine eigene Datei, das $PHP_SELF durch den Dateinamen ersetzt (bei mir geht alles über index1.php?sec=bla, da kommt wohl PHP durcheinander) und diese dann included, Fertig
     
    Bitte dran denken!
    Wenn eure Frage geklärt ist, markiert nach eurer Antwort den Thread als erledigt und bewertet die Antworten

Ähnliche Themen

  1. mit PHP rechnen..
    Von madirfan im Forum PHP
    Antworten: 1
    Letzter Beitrag: 27.05.08, 15:08
  2. Rechnen
    Von siros im Forum PHP
    Antworten: 1
    Letzter Beitrag: 19.05.06, 10:32
  3. Rechnen
    Von mckani im Forum PHP
    Antworten: 0
    Letzter Beitrag: 07.12.05, 18:08
  4. Rechnen mit SQL?
    Von uwee im Forum Relationale Datenbanksysteme
    Antworten: 6
    Letzter Beitrag: 12.01.05, 09:44
  5. +- Rechnen !
    Von BigBruder im Forum Java
    Antworten: 6
    Letzter Beitrag: 14.11.03, 22:31