• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

PHP - problem z AJAXEM

Object Storage Arubacloud
0 głosów
236 wizyt
pytanie zadane 2 października 2017 w PHP przez kingkushlee Gaduła (3,960 p.)

Witam, mam taki kod:

<!doctype html>
<?php
if(!isset($_GET['file'])){
    die('An error has occured! Please try again ');
}
else
{
    if(!file_exists($_GET['file'])){
        die('Sorry, file is not exists');
    }
    else {
        $file_url = $_GET['file'];
        $nazwa = $_GET['name'];
        $opis = $_GET['desc'];
        $rozszerzenie = $_GET['ext'];
        $rozmiar = $_GET['siz'];                
        require_once "connect.php";
        session_start();
                        
        $polaczenie = mysqli_connect($host, $user, $pass);
        mysqli_query($polaczenie, "SET CHARSET utf8");     
        mysqli_query($polaczenie, "SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");
        mysqli_select_db($polaczenie, $db);
        $zapytanie = "SELECT downloads FROM files WHERE filepath='$file_url'";
        $rezultat = mysqli_query($polaczenie, $zapytanie);
        $ile = mysqli_num_rows($rezultat);      
        $row = mysqli_fetch_assoc($rezultat);
        $pobrania = $row['downloads'];
        $polaczenie->close();
    }

}
?>
<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang=""> <![endif]-->
<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8" lang=""> <![endif]-->
<!--[if IE 8]>         <html class="no-js lt-ie9" lang=""> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
    <head>
        <meta charset="utf-8">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <title></title>
        <meta name="description" content="">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="apple-touch-icon" href="apple-touch-icon.png">

        <link rel="stylesheet" href="css/normalize.min.css">
        <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
        
        <!-- Favicons -->
        <link rel="icon" type="image/png" href="img/Favicons/favicon-16x16.png" sizes="16x16" />
        <link rel="icon" type="image/png" href="img/Favicons/favicon-32x32.png" sizes="32x32" />
        <link rel="icon" type="image/png" href="img/Favicons/favicon-96x96.png" sizes="96x96" />
        <link rel="icon" type="image/png" href="img/Favicons/favicon-160x160.png" sizes="160x160" />
        <link rel="icon" type="image/png" href="img/Favicons/favicon-196x196.png" sizes="196x196" />
        <link rel="stylesheet" href="css/main.css">        
        
        <link rel="stylesheet" href="css/main.css">
        <link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet"> 
        <link href="https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700&amp;subset=latin-ext" rel="stylesheet"> 
        <script src="js/vendor/modernizr-2.8.3-respond-1.4.2.min.js"></script>
        <title>All Minecraft Engines</title>
    </head>
    <body>
        <!--[if lt IE 8]>
            <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
        <![endif]-->

        <div class="header-container">
            <header class="wrapper clearfix">
                <a class="mainlink" href="home"><h1 class="title">allmcengines.com</h1></a>
                <nav>
                    <ul>                       
                        <li><a href="download-files">Files</a></li>
                        <li><a href="valuable-places-in-the-internet">Sites</a></li>
                    </ul>
                </nav>
            </header>
        </div>   
       
        <div class="main-container">
            <div class="main wrapper clearfix">
                <header><h1 style="text-align: center;">Download <?php echo $nazwa; ?></h1></header>
                <article>
                    <?php
                        if($rozszerzenie == '.jar'){                     
                        echo '<div id="fileinfo"><img src="img/javaicon.png" width="120px" height="120px" style="text-align: center;" />   <span class="info">Open with: It\'s executable JAR file</span><br /><span class="info">File size: '.$rozmiar.' MB</span><br /><span class="info">File extension: '.$rozszerzenie.'</span><br /><span id="downloads" class="info"></span>';?><script>
                        setInterval(100, function(){
                            $('#info').load(function(){
                                var downloads = <?=$pobrania ?>;
                                document.getElementById('#downloads').innerHTML = 'Downloads: '+downloads;
                            });
                        });
                    </script>
                    <?php echo'<span class="info"><a class="download" href="pobieranie.php?plik='.$file_url.'"><button type="button" id="download" class="download btn btn-primary">Download</button></a></div>';
                    }
                    else if($rozszerzenie == '.zip'){
                        echo '<div id="fileinfo"><img src="img/zipicon.png" width="120px" height="120px" style="text-align: center;" />   <span class="info">Open with: It\'s executable JAR file</span><br /><span class="info">File size: '.$rozmiar.' MB</span><br /><span class="info">File extension: '.$rozszerzenie.'</span><br /><>';?><?php echo'<span class="info"><a class="download" href="pobieranie.php?plik='.$file_url.'"><button type="button" id="download" class="download btn btn-primary">Download</button></a></div>';
                    }        
                    ?>
                    <div id="loadfileinfo"></div>
                </article>
                    
            </div>
        </div> 
        <div class="footer-container">
            <footer class="wrapper">
                <h3 class="foot">&copy; allmcengines.com. All rights reserved. <a class="mainlink" href="sources">Sources</a></h3>
            </footer>
        </div>        
        <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
        <script src="js/main.js"></script>

        <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
        <script>
            (function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=
            function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;
            e=o.createElement(i);r=o.getElementsByTagName(i)[0];
            e.src='//www.google-analytics.com/analytics.js';
            r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));
            ga('create','UA-XXXXX-X','auto');ga('send','pageview');
        </script>               
    </body>
</html>

Dlaczego AJAX nie działa? Błędów w konsoli nie wypluwa ani po usunięciu display_errors nie wywala błędów. Proszę o odpowiedź.

komentarz 2 października 2017 przez ChuZZZta Bywalec (2,540 p.)
Popraw tytuł błagam

1 odpowiedź

0 głosów
odpowiedź 2 października 2017 przez Ehlert Ekspert (212,670 p.)
wybrane 2 października 2017 przez kingkushlee
 
Najlepsza
  1. Przypisujesz zmienne z PHP do JSa co jest bardzo złą praktyką.
  2. Nigdzie nie korzystasz z Ajaxa
  3. Mieszasz PHP i HTML. Bardzo zły nawyk.
  4. Korzystasz ze stylowania inline oraz zdeprecjonowanych atrybutów.
  5. Brakuje obsługi błędów. 

Jeśli oczekujesz pomocy popraw kod. Poczytaj odpowiedzi w kategorii PHP i zorientuj się z czego korzystać i w jaki sposób.  

komentarz 2 października 2017 przez efiku Szeryf (75,160 p.)
Plus lepsze opisanie co nie działa i co ten kod ma robić, ułatwi to pomoc.
komentarz 2 października 2017 przez kingkushlee Gaduła (3,960 p.)
W bazie danych trzymam informacje o pliku czyli: nazwę, opis, rozszerzenie, rozmiar, ścieżkę do niego oraz ilość pobrań. Ten fragment, gdzie jest JS i load ma za zadanie co 100 milisekund aktualizować dane ile razy plik został pobrany. Jak usunąłem JS i dałem samo PHP to działało. Teraz jak chciałem dodać load do setInterval to nie chce działać.
komentarz 2 października 2017 przez Ehlert Ekspert (212,670 p.)
No bo 20 razy na sekundę łapiesz ten sam element DOM. To istny gwałt na przeglądarce.
komentarz 2 października 2017 przez kingkushlee Gaduła (3,960 p.)
a jakbym ustawił np na 1000 albo 1500 to by działało?
komentarz 2 października 2017 przez efiku Szeryf (75,160 p.)
Możesz zaparzyć sobie kawę, jeśli pytasz o pozwolenie :)

PS: Sprawdź sam?

Podobne pytania

0 głosów
0 odpowiedzi 253 wizyt
0 głosów
0 odpowiedzi 80 wizyt
0 głosów
1 odpowiedź 95 wizyt

92,565 zapytań

141,416 odpowiedzi

319,596 komentarzy

61,948 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...