Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    PHP-Ajax che funziona solo in locale

    come da oggetto lo script php-ajax mi funziona solo in locale

    questa è la parte della pagina principale
    Codice PHP:
    <a target="_blank" href="http://geo.verruijt.net/" onclick="innerinit('counter.php', 11);">
    [
    img]/img/html_icon.png[/img]
    </
    a
    script ajax
    Codice PHP:
    function innerinit(urlval){ 
        var 
    type "GET";
        
    url'/php/' url '?idrisorsa=' val;

        
    //xmlhttprequest
        
    if(window.XMLHttpRequest){
              var 
    req=new XMLHttpRequest();
        }else if(
    window.ActiveXObject){
              var 
    req=new ActiveXObject("Microsoft.XMLHTTP");
        }
        
        if(
    req!=undefined){
          
            
    req.open(type,url,true);            
            
    req.send();
            
        }
        

    script PHP che viene chiamato
    Codice PHP:
    <?php require_once($_SERVER['DOCUMENT_ROOT'] . 'Connections/myconn.php'); ?>
    <?php
    if (isset($_GET['idrisorsa'])){
        
    $idris=$_GET['idrisorsa'];
        
    mysql_select_db($myconn$mydb);
        
    $query_conta=sprintf("UPDATE download_risorse SET contatore = contatore + 1 WHERE id_risorsa =%d"$idris);
        
    $conta mysql_query($query_conta$mydb) or die(mysql_error());
    }

    ?>
    qualcuno mi sa spiegare perchè non funziona in remoto (server linux)?

    grazie

  2. #2
    mi sa che è un problema relativo allo script php perchè mettendo un alert ho visto che ajax risponde.

    pensavo fosse un problema di percorso linux (/php/ecc...) ma non è quello perchè ho provato a mettere i file nella stessa cartella e non funziona ancora.



    help!

  3. #3
    mi andrebbe bene anche se mi diceste come posso, tramite una cosa tipo alert di javascript, vedere se sono arrivato allo script php.

    grazie

  4. #4
    alla fine ho provato con il framework jquery ma ancora niente:

    questo è la pagina principale
    Codice PHP:
    <a target="_blank" href="http://geo.verruijt.net/" onclick="$.get('/php/counter.php', {idrisorsa:11}, function(data){ alert('Valore passato: ' + data);});">
    [
    img]/img/html_icon.png[/img]
    </
    a
    e questo lo script counter.php
    Codice PHP:
    <?php require_once($_SERVER['DOCUMENT_ROOT'] . 'Connections/myconn.php'); ?>
    <?php
    if (isset($_GET['idrisorsa'])){
        
    $idris=$_GET['idrisorsa'];
        
    mysql_select_db($myconn$mydb);
        
    $query_conta=sprintf("UPDATE download_risorse SET contatore = contatore + 1 WHERE id_risorsa =%d"$idris);
        
    $conta mysql_query($query_conta$mydb) or die(mysql_error());
        echo 
    $idris;
    }

    ?>
    il risulato è che al click del link,
    in locale esce un alert con scritto "Valore passato: 11" e mi aggiorna la tabella con l'UPDATE
    in remoto esce un alert con scritto "Valore passato: "
    infatti in remoto non mi aggiorna la tabella

  5. #5
    Non è la maniera migliore per implementare jquery

    La funzione ajax dovrebbe essere inserita nella funzione $ nell'header e attivata dall'evento click

    Codice PHP:
    $(document).ready(function() {
          $(
    "#id_dell_immagine").click(function(){
          
    //chiamata ajax
             
    });
        }); 
    una cosa del genere.
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  6. #6
    Ma siamo un po' fuori tema, penso che ti sposteranno su javascript
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  7. #7
    trovato l'errore.
    bisogna togliere il require_once e mettere
    Codice PHP:
    include($_SERVER['DOCUMENT_ROOT'] . '/Connections/myconn.php'); 
    così funziona... era un problema di php

    sapete dirmi perchè?

  8. #8
    Un file di connessione al db se chiamato con require o include non vedo cosa possa cambiare.

    Piuttosto ha poco senso aprire e chiudere php come nella prima riga di counter.php

    Inoltre correggi comunque come ti ho indicato. In un caso del genere meglio avere tutto nell'header a document ready
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  9. #9
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Le direttive inclue require e require_once funzionano in modo diffrente le une dalle altre.

    INCLUDE effettua un "copia/incolla" del codice, quindi se hai funzioni ti rende visibili e utilizzabili le funzioni, Se invece hai codice, testo o altro scritto in tale file e' come se andassi ad incollare brutalmente il contenuto di quel file dove usi include. Rendendo disponibili funzioni, classi o variabili usate nel file bersaglio(in base alle regole di scoping).

    REQUIRE collega le risorse del file beraglio al file richiedente, quindi se hai funzioni esse diventano disponibili, ma se hai del codice questo viene ignorato. Inoltre se includi piu' volte lo stesso file php genera un errore.

    REQUIRE_ONCE funziona come require solo che effettua un controllo se il file bersaglio e' gia' stato incluso ignora la chiamata e non genera errore, mantenendo cosi' il link gia' inserito.

    Se non mi sbaglio queste direttive funzionano cosi' ( se ho detto qlke minkiata correggetemi), quindi se il tuo script di connessione non era incapsulato in una funzione ma era del codice scritto sulla pagina senza funzioni o classi la direttiva require non lo poteva utilizzare per cui la direttiva include era la soluzione.


  10. #10


    Non so dove sei andato a prenderle

    REQUIRE collega le risorse del file beraglio al file richiedente, quindi se hai funzioni esse diventano disponibili, ma se hai del codice questo viene ignorato. Inoltre se includi piu' volte lo stesso file php genera un errore.
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.