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

    [AJAX] invio di una textbox con jquery

    ciao ragazzi sto cercando di capire perchè non mi funziona un caso particolare..
    ho una funzione che con Jquery mi invia il valore di una textbox(di cui ho fatto il trim tramite una funzione a parte)a un file php che poi controllerà nel database l'esistenza di ciò che è stato inserito..
    il problema è che se io inserisco nella textbox una parola singola va sempre tutto benissimo,se invio invece una parola con uno spazio di divisione come ad esempio 'ciao ciao' allora non entra nemmeno nel file php (ho messo una echo all'inizio del file per vedere se entrava...)

    ora posto la funzione javascript che esegue la chiamata jquery e la funzione di trim

    codice:
    	function ControlGen(textBoxGen) { //funzione che controlla la validità della textbox di aggiunta genere e lo invia allo script
    		
    		textBoxGen=trim(textBoxGen);
    		
    		if(textBoxGen!='')
    		{
    $('#selDiv').load('../_script/_addDelElements.php?txtInput='+textBoxGen+'&operation=addGenere&catCtrl='+categoryNumberCopy, function(){
       if(colora == 0) coloraBottone();
    });
    			var errorPersonalized=document.getElementById('ErrorPersonalized');
    			errorPersonalized.style.display="none";
    			var hiddenPersonalGenere=document.getElementById('hiddenPersonalGenere');
    			hiddenPersonalGenere.value=0;
    		}
    		else
    		{
    			AddGenere();
    			var errorePersonalizzato = '!)Se vuoi aggiungere un genere personalizzato non puoi lasciare il campo vuoto.';
    			var errorPersonalized=document.getElementById('ErrorPersonalized');
    			errorPersonalized.innerHTML=errorePersonalizzato;
    			errorPersonalized.style.display="block";
    		}
    }
    
    
    	function trim(stringa){
        while (stringa.substring(0,1) == ' '){
            stringa = stringa.substring(1, stringa.length);
        }
        while (stringa.substring(stringa.length-1, stringa.length) == ' '){
            stringa = stringa.substring(0,stringa.length-1);
        }
        return stringa;
    }
    ora posto il codice php che riceve i valori e che esegue la query..

    codice:
    	else if($operationType == 'addGenere')
    	{
    		$txtInput = $_GET['txtInput'];
    		$selectedCat = $_GET['catCtrl'];		
    		$txtInput = htmlentities(trim($txtInput));
    		
    		echo "txtInput vale $txtInput";
    		
    		if($txtInput<>'')
    		{
    			$addGenQuery = mysql_query("
    			SELECT Genere.ID_Genere, Genere.Nome_Genere,Genere.User_Personalize
    			FROM Genere
    			INNER JOIN Cat_Gen ON Genere.ID_Genere = Cat_Gen.ID_Gen
    			WHERE Genere.Nome_Genere LIKE '%$txtInput%'
    			AND Cat_Gen.ID_Cat =$selectedCat
    			AND ((Genere.User_Personalize =311)OR(Genere.User_Personalize =0))
    			");
    	 		$numberExstGen = mysql_affected_rows(); // numero di record trovati
    			$resultAddGenQuery = mysql_fetch_array($addGenQuery);
    			$idGenResult=$resultAddGenQuery['ID_Genere'];
    			$genResult=$resultAddGenQuery['Nome_Genere'];
    			$idUserGenResult=$resultAddGenQuery['User_Personalize'];
    			?>
    dove credete sia il mio problema?

  2. #2
    praticamente ho risolto in questo modo:

    var textBoxGen2=trim(textBoxGen);
    textBoxGen=textBoxGen2.replace(/[\ ]/g,"|");

    sostituendo gli spazi con dei caratteri speciali che poi eliminerò nel php

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.