Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Class 'App' hatası acil

Konu, 'PHP' kısmında graffi2008 tarafından paylaşıldı.

  1. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    arkadaşlar siteme arcade modu aldim hazir bir içerik, fakat aldiğim yerin sahipleri bir şeyler bash etti bir şey anlayamadım tekrar mail attim cevap vermediler ve burada oyun ekliyorum siteye, her şey iyi çalışıyor oyun oynayabiliyorlar kullanıcılar fakat, oyun bittiğinde üyenin aldiği skor siteye eklenmiyor hemen otomatik olarak kendini skor tablosuna ekleyeceğine bir hata çıkıyor
    hata böyle ;
    Fatal error: Class 'App' not found in /home/site/public_html/file/arcadeinc.php on line 5

    ve
    arcadeinc.php kodları bunlar nerede yanliş var yardımcı olursanız çok sevineceğim tşkler herkese

    PHP:
    <?php
    $getdo 
    $_GET['do'];
    if(!empty(
    $getdo)){
        if(
    $getdo == "newscore"){
            
    $oSrvSec = &App::getModuleService('Account''Security');
            
    $arcadeUser $oSrvSec->getCurrentUserLogin();        
            
            
    $sql "SELECT * FROM `arcade_options`";
            
    $result mysql_query($sql);
            
    $arcadeOption = array();
            while(
    $row mysql_fetch_array($result)){
                
    $var $row['var'];
                
    $value $row['value'];
                
    $arcadeOption[$var] = $value;
            }
            
            if(!
    $arcadeUser){
                
    $turl $arcadeOption['guestplaylink'];
                
    header("Location: $turl");
            }        
            
            global 
    $_CONF;
            
    $prefix $_CONF['db']['prefix'];
        
            
    $gname $_POST['gname'];
            
    $score $_POST['gscore'];
        
            
    $sql="SELECT * FROM `arcade_games` WHERE `shortname` = '$gname' LIMIT 1";
            
    $result=mysql_query($sql);
            
    $row mysql_fetch_array($result);
            
    $gameid $row['gameid'];
            
    $isreverse $row['isreverse'];
            
    $cgamename $row['title'];
        
            if(
    $gameid && $score && $arcadeUser){
                
    $sql "SELECT * FROM `arcade_options` WHERE `var` = 'activitypoints' LIMIT 1";
                
    $result mysql_query($sql);
                
    $row mysql_fetch_array($result);
                
    $points $row['value'];
            
                if(
    $points 0){
                    
    $sql "UPDATE `" $prefix "user_info` SET `arcade` = `arcade` + '$points', `total` = `total` + '$points' WHERE `user` = '$arcadeUser' LIMIT 1";
                    
    $result mysql_query($sql);
                }
                
                
    //check to see if we have a new high score
                
    if($isreverse == 1){
                    
    $sql "SELECT * FROM `arcade_highscores` WHERE `gamename` = '$gameid' AND `score` < '$score' ORDER BY `score` LIMIT 1";
                }
                else{
                    
    $sql "SELECT * FROM `arcade_highscores` WHERE `gamename` = '$gameid' AND `score` > '$score' ORDER BY `score` LIMIT 1";
                }
                
    $result=mysql_query($sql) or die(mysql_error());
                
    $num mysql_num_rows($result);
                if(
    $num 1){
        
        
    // remove credit from old highscorer
                    
    if($isreverse == 1){
                        
    $sql "SELECT * FROM `arcade_highscores` WHERE `gamename` = '$gameid' ORDER BY `score` ASC LIMIT 1";
                    }
                    else{
                        
    $sql "SELECT * FROM `arcade_highscores` WHERE `gamename` = '$gameid' ORDER BY `score` DESC LIMIT 1";
                    }
                    
    $result=mysql_query($sql) or die(mysql_error());
                    
    $num2 mysql_num_rows($result);
                    if(
    $num2 == 1){
                        
    $row mysql_fetch_array($result);
                        
    $huser $row['username'];
                        
    $sql "UPDATE `" $prefix "user` SET `arcade_champs` = `arcade_champs`-1 WHERE `user` = '$huser' LIMIT 1";
                        
    $result=mysql_query($sql) or die(mysql_error());
                    }
        
        
    // add credit to new highscorer
                    
    $sql "UPDATE `" $prefix "user` SET `arcade_champs` = `arcade_champs`+1 WHERE `user` = '$arcadeUser' LIMIT 1";
                    
    $result=mysql_query($sql) or die(mysql_error());
                    
    $time time();
        
        
    // submit to news
                    
    $huser = isset($huser) ? $huser "";   // diego added, $huser may not be set 
                    
    $sql "INSERT INTO `arcade_news` (`type`, `time`, `winner`, `loser`, `score`, `gameid`) VALUES ('1', '$time', '$arcadeUser', '$huser', '$score', '$gameid')";
                    
    $result=mysql_query($sql) or die(mysql_error());
                }
                
    $sql "INSERT INTO `arcade_highscores` (`gamename`, `username`, `score`) VALUES ('$gameid', '$arcadeUser', '$score')";
                
    $result=mysql_query($sql) or die(mysql_error());
                
        
    // update challenge
                
    if(isset($_SESSION['arcadeCid'])){
                    
    $ncid $_SESSION['arcadeCid'];
                    
    $sql "SELECT * FROM `arcade_challenges` WHERE `id` = '$ncid' AND (`user1` = '$arcadeUser' OR `user2` = '$arcadeUser') AND `gameid` = '$gameid' LIMIT 1";
                    
    $result mysql_query($sql);
                    
    $num mysql_num_rows($result);
                    
    $row mysql_fetch_array($result);
                    if(
    $num == 1){
                        
    $cu1 $row[user1];
                        
    $cu2 $row[user2];
                        if(
    $cu1 == $arcadeUser){
                            
    $col "score1";
                            
    $opp $cu2;
                        }else{
                            
    $col "score2";
                            
    $opp $cu1;
                        }
                        
    $iss $row["$col"];
                        
                        if(!
    $iss){
                            
    $sql "UPDATE `arcade_challenges` SET `" $col "` = '$score'  WHERE `id` = '$ncid' LIMIT 1";
                            
    $result mysql_query($sql);
                        }
                        
                        
    // check winner
                        
                        
    $sql "SELECT * FROM `arcade_challenges` WHERE `id` = '$ncid' LIMIT 1";
                        
    $result mysql_query($sql);
                        
    $row mysql_fetch_array($result);
                        
    $score1 $row[score1];
                        
    $score2 $row[score2];
                        if(
    $score1 && $score2){
                            
    $user1 $row[user1];
                            
    $user2 $row[user2];
                            if(
    $score1 $score2){
                                if(
    $isreverse == 1){
                                    
    $winner $user2;
                                    
    $loser $user1;
                                    
    $wscore $score2;
                                    
    $lscore $score1;
                                }
                                else{
                                    
    $winner $user1;
                                    
    $loser $user2;
                                    
    $wscore $score1;
                                    
    $lscore $score2;
                                }
                            }
                            if(
    $score2 >= $score1){
                                if(
    $isreverse == 1){
                                    
    $winner $user1;
                                    
    $loser $user2;
                                    
    $wscore $score1;
                                    
    $lscore $score2;
                                }
                                else{
                                    
    $winner $user2;
                                    
    $loser $user1;
                                    
    $wscore $score2;
                                    
    $lscore $score1;
                                }
                            }
                            
    $sql "UPDATE `arcade_challenges` SET `winner` = '$winner'  WHERE `id` = '$ncid' LIMIT 1";
                            
    $result mysql_query($sql);
                            
                            
    $time time();
                            
    $sql "INSERT INTO `arcade_news` (`type`, `time`, `winner`, `loser`, `score`, `gameid`) VALUES ('2', '$time', '$winner', '$loser', '$wscore', '$gameid')";
                            
    $result=mysql_query($sql) or die(mysql_error());
                            
                    
    // send loser a message
                            
    $title "$winner has defeated you at $cgamename";
                            
    $mess "$winner has defeated your score of $lscore at $cgamename with a score of $wscore. <p>You can view more details by clicking ";
                            
                            
    $turl App::makeUrl("arcadechallenge");
                            
                            
    $mess .= "<a href=\"$turl\">here.</a>";
                                                    
                            
    $sqla="INSERT INTO `" $prefix "mail` (`to`, `from`, `title`, `text`, `time`, `type`) VALUES ('$loser', '$winner', '$title', '$mess', $time, 'mail')";
                            
    $resulta=mysql_query($sqla) or die(mysql_error());
                            
                            
                    
    // send winner a message
                            
    $title "You have just defeated $loser at $cgamename!";
                            
    $mess "Your score of $wscore defeated $loser\'s score of $lscore at $cgamename! <p>You can view more details by clicking ";
                            
    $turl App::makeUrl("arcadechallenge");
                            
    $mess .= "<a href=\"$turl\">here.</a>";
                            
    $sqla="INSERT INTO `" $prefix "mail` (`to`, `from`, `title`, `text`, `time`, `type`) VALUES ('$winner', '$loser', '$title', '$mess', $time, 'mail')";
                            
    $resulta=mysql_query($sqla) or die(mysql_error());
                            
                            
                        }
                        else{
                            
    // send opponent a message
                            
    $time time();
                            
    $title "$arcadeUser has submitted a score!";
                            
    $mess "$arcadeUser has submitted a score of $score for your arcade duel at $cgamename! <p> You can play to submit your opposing score by clicking ";
                            
                            
    $turl App::makeUrl("arcade",array("play" => $gameid"cid" => $ncid));
                            
                            
    $mess .= "<a href=\"$turl\">here.</a>";
                            
                            
    $sqla="INSERT INTO `" $prefix "mail` (`to`, `from`, `title`, `text`, `time`, `type`) VALUES ('$opp', '$arcadeUser', '$title', '$mess', $time, 'mail')";
                            
    $resulta=mysql_query($sqla) or die(mysql_error());
                        }                    
                    }
                    unset(
    $_SESSION['arcadeCid']);
                }
            }
            if(
    $arcadeUser != ""){
                
    $turl App::makeUrl("arcade",array("highscore" => $gameid));
                
    header("Location: $turl");
            }
        }
    }
    ?>
     
  2. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    Sorunu söylemiş zaten. App sınıfı bulunamadı diyor..
    Dosyaları tekrar kontrol et

    class App{
    ....
    ...

    diye bir yer olması gerek oranın tamamını bu sayfaya ekle veya baska sayfada ise bu sayfaya include et duzelir.
    Koılay gelsin.
     
  3. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    app yi çalıştıran yardım bir class olmadığı için bu hatayı alıyorsun.
    iyice kontrol et bi include dosyası olmalı.
    PHP:
    <?php
    $getdo 
    $_GET['do'];
    require_once(
    'dosya.php');
    if(!empty(
    $getdo)){
        if(
    $getdo == "newscore"){
            
    $oSrvSec = &App::getModuleService('Account''Security');
    ....
     
  4. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    Acil diyor adam piyasada yok :)
     
  5. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    :)
    Yarın girer bakar. Cevap Varsa Ne ala...
    Ama yoksa sitemkar bi mesaj gelir ;)
     
  6. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    evet arkadaşlar bende öyle düşünmüştüm include de appclass var fakat neden bulmuyor anlamadim nasıl bağlantı kurulur bilmiyorum app.class,'ın içinde bu kodlar var bir hata olabilir mi burada sizce veya nasıl bu app.class'a yönlendirme yapılır ?
     
  7. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    yok arkadaşlar dalmiştim koda ve sistemden çikmiştim yeni fark ettim tşk ederim herkese fakat sorunu bulamadım halen
     
  8. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    @graffi2008, bluenin dediği gibi class App{} diye bir class olacak o nerde?
    onun olması lazım.

    arcadeinc.php?do=newscore

    bütün dosyaların içine bak app.class.php de olabilir adı bilemiyorum artık ama olması lazım app classı.
    Çünkü hata satırında &App:: class olarak atanmış.
     
  9. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    dosyaların içinde \include\classes\App.class.php var ve include\classes\api\PhpFoX.class.php php var, ben senin verdiğin gibi yaptım sayfa hiç açilmadı

    <?php
    $getdo = $_GET['do'];
    require_once('App.class.php');
    if(!empty($getdo)){
    if($getdo == "newscore"){
    $oSrvSec = &App::getModuleService[COLOR=#007700]([COLOR=#DD0000]'Account'[COLOR=#007700], [COLOR=#DD0000]'Security'[COLOR=#007700]);[/COLOR][/COLOR][/COLOR][/COLOR][/COLOR]
     
  10. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    boyle bir dene
    PHP:
    <?php
    $getdo 
    $_GET['do'];
    require_once(
    './include/classes/App.class.php');
    if(!empty(
    $getdo)){
    if(
    $getdo == "newscore"){
    $oSrvSec = &App::getModuleService('Account''Security');
     
  11. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    require_once('App.class.php');
    bu kısıma tam yol vereceksin.
    yani :
    PHP:
     require_once('./include/classes/App.class.php');
    Tabii ki senin arcadeinc.php dosyanın olduğu konuma göre vereceksin.
     
  12. materyalist

    materyalist Daimi Üye

    Kayıt:
    24 Aralık 2007
    Mesajlar:
    771
    Beğenilen Mesajlar:
    0
    Şehir:
    PHP.Net
    bule:D ikimizde aynısını yazıoz sen burayla ilgilen o zaman :)
    ben başka yerlerde yardım bekleyen varsa oralara bakim ;)
     
  13. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    Evet ya bende zaten merak ettim semih cevap yazması lazımdı dedim. yazmamıştın ben başlarken sen yay azıyordun yada aynı başladık :)
     
  14. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    arkadaşlar ilgilendiğiniz için çok tşk ederim, bunuda yaptim yine olmadı :S mod normalde sağlam 100 kişi belki oradan almiş bende aldım mod zaten yabancı siteden adamlar dedi çalışıyor incelesen fakat, oyun açiliyor oyun skor kayıt etmede sorun var ve dikkatimi çeken bir şey var ne zaman ben bu siteyi install ettiğimde ana dizinde include klasörü vardi arti install klasörün içinde includes\classes\App.class class içindeki kodlar değişik bu normal include ki kodlarla, ve yaninda Ftp.class diye bir dosya var, fakat ilk yükleme yaptiğimda install klasörünü silin dediler bende sildim, sizce onla alakası olabilir mi ?
    require_once('./include/classes/App.class.php');
     
  15. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    ve arkadaşlar dediğiniz gibi bir daha denedim fakat bu hatayi verdi bu sefer


    Warning: App::require_once(PHPFOX_INCLUDEmodules/Account/classes/PhpFox_Module.class.php) [function.App-require-once]: failed to open stream: No such file or directory in /home/site/public_html/include/classes/App.class.php on line 70

    Fatal error: App::require_once() [function.require]: Failed opening required 'PHPFOX_INCLUDEmodules/Account/classes/PhpFox_Module.class.php' (include_path='.:/usr/lib/php') in /home/site/public_html/include/classes/App.class.php on line 70
     
  16. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    sanırım senin kurulumunda hata var. kurarken yoları hatalı belirtmiş olabilirsin.
     
    Son düzenleme yönetici tarafından yapıldı: 26 Haziran 2008
  17. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    sanmam hatalı olduğuna site çok iyi çalişiyor, ve oyun modunu eklediğimde hiç bir sorun yok gayet iyi çalişiyor fakat, bu puana yönlendirme olmuyor :S
     
  18. Ferhat Ozdemir

    Ferhat Ozdemir Daimi Üye

    Kayıt:
    14 Nisan 2006
    Mesajlar:
    3,268
    Beğenilen Mesajlar:
    3
    Meslek:
    Electronics and Computer Engineer
    Şehir:
    Texas
    PHPFOX_INCLUDEmodules diye bir klasor varmı ana dizinde.
    ve Account klasörü nerde ?
     
  19. graffi2008

    graffi2008 Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    39
    Beğenilen Mesajlar:
    0
    içinde phpfox_include diye bir modul yok include\modules\Account\classes burada klasörde o PhpFox_Module.class.php