Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Chiamata ajax sempre in error

    Salve a tutti,

    premetto che sono nuovo sul forum e un novizio di ajax,
    ho provato a dare un occhiata se era gia presente una discussione che riguardasse questo tipo di errore ma non ho trovato casi analoghi al mio.
    spero possiate essermi di aiuto.

    come da titolo ho un problema con la chiamata ajax alla mia pagina data.php.
    quello che faccio (o meglio vorrei fare) è:
    1. seleziono un nuovo valore di una delle select in index.html
    2. vengono selezionati i valori delle select
    3. passare questi valori tramite ajax a data.php


    quello che a regola mi da problemi è il punto 3 perchè la chiamata mi da sempre errore e di conseguenza mi stampi sempre l'alert di errore
    qualcuno sa spiegarmi il motivo??

    vi posto il mio codice
    questa la mia index.html
    codice:
    <html>
    	<head>
                <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8">
                <title>Lettori Italiani</title>
    			<link href="PaginaPrincipale.css" rel="stylesheet" type="text/css">
    			<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    			<script src="http://code.highcharts.com/highcharts.js"></script>
    			<script src="http://code.highcharts.com/modules/exporting.js"></script>
    			<meta name="description" content="indagine statistica per sui lettori italiani">
    			<link rel="stylesheet" type="text/css" href="stile.css">
    			<script src="select.js"></script>
    	</head>
    	<body>
    		<div id ="divtitolo">
    			<h1> Lettori Italiani </h1>
    			<h4>...e Tu leggi?</h4>
    		</div>
    		<div class="riga"><hr></div>
    		<div id="introduzione">
    			<p> spiegazione del sito</p>
    		<div class="riga"><hr></div>
    		<a href="index.html" class="off">Osserva per anno</a>
    		<a href="fascia.html" class="on">Osserva per fascia</a>
    
    
    		<p>Seleziona i parametri dei dati che vuoi visualizzare:</p>
    			<select class="esegui" id="sesso" name="sesso">
    				<option value="uomini" selected="selected">Uomini</option>
    				<option value="donne">Donne</option>
    				<option value="totale">Totale</option>
    			</select>
    			<select class="esegui" id="fascia1" name="fascia1">
    				<option value="6-10" selected="selected">6 - 10 anni</option>
    				<option value="11-14">11 - 14 anni</option>
    				<option value="15-17">15 - 17 anni</option>
    				<option value="18-19">18 - 19 anni</option>
    				<option value="20-24">20 - 24 anni</option>
    				<option value="25-34">25 - 34 anni</option>
    				<option value="35-44">35 - 44 anni</option>
    				<option value="45-54">45 - 54 anni</option>
    				<option value="55-59">55 - 59 anni</option>
    				<option value="60-64">60 - 64 anni</option>
    				<option value="65-74">65 - 74 anni</option>
    				<option value="75 o +">75 o + anni</option>
    			</select>
    			<select class="esegui" id="fascia2" name="fascia2">
    				<option value="6-10" selected="selected">6 - 10 anni</option>
    				<option value="11-14">11 - 14 anni</option>
    				<option value="15-17">15 - 17 anni</option>
    				<option value="18-19">18 - 19 anni</option>
    				<option value="20-24">20 - 24 anni</option>
    				<option value="25-34">25 - 34 anni</option>
    				<option value="35-44">35 - 44 anni</option>
    				<option value="45-54">45 - 54 anni</option>
    				<option value="55-59">55 - 59 anni</option>
    				<option value="60-64">60 - 64 anni</option>
    				<option value="65-74">65 - 74 anni</option>
    				<option value="75 o +">75 o + anni</option>
    			</select>
    			<select class="esegui" id="fascia3" name="fascia3">
    				<option value="6-10" selected="selected">6 - 10 anni</option>
    				<option value="11-14">11 - 14 anni</option>
    				<option value="15-17">15 - 17 anni</option>
    				<option value="18-19">18 - 19 anni</option>
    				<option value="20-24">20 - 24 anni</option>
    				<option value="25-34">25 - 34 anni</option>
    				<option value="35-44">35 - 44 anni</option>
    				<option value="45-54">45 - 54 anni</option>
    				<option value="55-59">55 - 59 anni</option>
    				<option value="60-64">60 - 64 anni</option>
    				<option value="65-74">65 - 74 anni</option>
    				<option value="75 o +">75 o + anni</option>
    			</select>
    				
    		<div id="container" style="min-width: 400px; height: 400px; margin: 0 auto; margin-top: 40px;"></div>
      </body>
    	
    </html>
    la pagina select.js invece è
    codice:
    $(document).ready(function(){
    	$('.esegui').change(function(){
    		var sesso = $('#sesso').val();
    		var fascia1 = $('#fascia1').val();
    		var fascia2 = $('#fascia2').val();
    		var fascia3 = $('#fascia3').val();
    		alert("parametri letti");
    		$.ajax({
    			type: "GET",
    			url: "data.php",
    			dataType: "json",
    			data:{'sesso':sesso, 'fascia1':fascia1, 'fascia2':fascia2, 'fascia3':fascia3},
    			//data:"sesso="+sesso+"&fascia1="+fascia1+"&fascia2="+fascia2+"&fascia3="+fascia3,
    			success:function(risultato){
    			    alert("successo");
    				//grafico();
    			},
    			error:function(){alert("errore");}
    		});
    	});
    });
    
    //crea il grafico tramite highcharts
    function grafico(){}
    mentre la mia pagina data.php è:

    codice:
    <?php
    $con = mysql_connect("localhost","root","");
    
    
    if (!$con) {
     die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("letturalibri", $con);
    
    
    $sesso = $_GET['sesso'];
    $fascia1 = $_GET['fascia1'];
    $fascia2 = $_GET['fascia2'];
    $fascia3 = $_GET['fascia3'];
    
    
    $que = mysql_query("SELECT a1995, a1996, a1997 FROM '$sesso' WHERE Fascia='$fascia1' OR Fascia='$fascia2' OR Fascia='$fascia3'");
    
    
    $series1 = array();
    $series1['name'] = "$fascia1";
    
    
    $series2 = array();
    $series2['name'] = "$fascia2";
    
    
    $series3 = array();
    $series3['name'] = "$fascia3";
    
    
    while($r = mysql_fetch_array($que)){
    	$series1['data'][] = $r['a1995'];
        $series2['data'][] = $r['a1996'];
        $series3['data'][] = $r['a1997'];  
    }
    
    
    $result = array();
    array_push($result,$series1);
    array_push($result,$series2);
    array_push($result,$series3);
    
    
    print json_encode($result, JSON_NUMERIC_CHECK);
    ?>

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    dovresti attivare gli errori php e vedere se è lo script lato server che ha qualche problema

    se chiami esplicitamente data.php passando i parametri in querystring sul browser cosa succede?

    inoltre dovresti verificare i dati che il tuo script accetta prima di passarli alla query, altrimenti potrebbero bucarti il db con una sql injection
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Quote Originariamente inviata da fcaldera Visualizza il messaggio
    dovresti attivare gli errori php e vedere se è lo script lato server che ha qualche problema
    intendi attraverso
    ini_set('display_errors', 'On');
    error_reporting(E_ALL);

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    in realtà ho provato ma non mi visualizza nulla! è come se non mi entrasse proprio nella pagina data.php

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    metti degli echo() su diversi punti del codice (all'inizio, a metà, alla fine) e guarda quali stampa
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

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.