Php select option e ajax

Questo è parte del codice html e queste sono le due caselle da cui voglio prendere i dati da passare alla select:

HTML:
<select  name="consulente" id="consulente"  class="form-control1" style="height: 35px;width: 12%">
        <option value="<?php  echo $row->consulente;?>"><?php  echo $row->consulente;?></option>
        
        <?php
                $sql1="SELECT * from  valori where categoria ='tipo_utente_rubrica' Order By descrizione";

        $query1 = $dbh -> prepare($sql1);
        $query1->execute();
        $results1=$query1->fetchAll(PDO::FETCH_OBJ);
            
        if($query1->rowCount() > 0)
        {
            
            foreach($results1 as $row1)
                {     
            
            ?>
                <option value="<?php  echo $row1->Id;?>"><?php  echo $row1->descrizione;?></option>
                
            
            <?php
                }
        }
            
            ?>
            
        </select>

    <label for="exampleInputEmail1">Cognome e Nome</label> <input oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" type="text" style="width: 20%" id="comm_cog_nome" name="comm_cog_nome" value="<?php  echo ltrim($row->comm_cog_nome);?>"  class="form-control" >

JavaScript:
$(function() {
  $('#comm_cog_nome').bind('blur', function() {
     
     var value = $(this).val();
    
     $.ajax({
         type:'post',         
      url:'check_usr_rbc.php',
      dataType: 'json',      
      data : {'cog_nome' : value,'consulente':value},
      success : function(data){
    alert("Eccomi" );       
          $('#comm_cod_fis').val(data.Rbc_codfis);
          $('#comm_indirizzo').val(data.Rbc_indirizzo);
          $('#comm_mail').val(data.Rbc_mail);
          $('#comm_tel').val(data.Rbc_telefono);         
      }
      
     });
       
  });
});

in effetti sto notando che passo value ad entrambe le variabili... ma come posso fare altrimenti? il valore del campo "comm_cog_nome" ok... e l'altro???

Non credo sia solo questo l'errore...

questo è il file check_usr_rbc.php

PHP:
<?php
include('includes/dbconnection.php');

if (isset($_POST['cog_nome'])) {
    echo "fdsssssssssssssfjpsdkfpsdlmmmmmmmmmmmmmspdmflsplfdmspdfsf";
    echo '<script>alert("Contatto Inserito con Successo")</script>';
    $sql = "SELECT * FROM rubrica where Rbc_cognome ='".$_POST['cog_nome']."' and Rbc_tipo_contatto ='".$_POST['consulente']."'";
    $query = $dbh -> prepare($sql);
    $query->execute();
    $results=$query->fetchAll(PDO::FETCH_OBJ);
    echo '<script>alert("Contatto Inserito con Successo")</script>';
    if($query->rowCount() > 0)   
        foreach($results as $row) {
            
            $arr = array ("Rbc_codfis"=>$row->Rbc_codfis,"Rbc_indirizzo"=>$row->Rbc_indirizzo,"Rbc_mail"=>$row->Rbc_mail,"Rbc_telefono"=>$row->Rbc_telefono1);
            echo json_encode($arr); 
         }
    }else{
echo '<script>alert("Contatto Inserito con Successo")</script>';
        echo 'Errore';
    }

?>

sai darmi qualche dritta???

GRAZIE DI TUTTO
 
cog_nome' : value,'consulente':value
Beh intanto qui i valori che passi devono essere diversi, quindi al posto del secondo value metti value2, e prima della chiamata scrivi:
HTML:
var value2 = $("#consulente").val();
Poi mi pare che manchi una parentesi sull'if del file PHP.
Intanto sistema questo, e secondo me dovresti togliere tutti gli echo e lasciare solo quello del json_encode. Prova a fare queste cose e fammi sapere, domani guardo
 
Tommy niente da fare... non succede nulla.. ho modificato così il codice:

JavaScript:
$(function() {
  $('#comm_cog_nome').bind('blur', function(ev) {
    
     var value = $(this).val();
     var value2 = $("#consulente").val();     
     $.ajax({
         type:'post',         
      url:'check_usr_rbc.php',
      dataType: 'json',     
      data : {'cog_nome' : value,'consulente':value2},
      success : function(data){
    
          $('#comm_cod_fis').val(data.Rbc_codfis);
          $('#comm_indirizzo').val(data.Rbc_indirizzo);
          $('#comm_mail').val(data.Rbc_mail);
          $('#comm_tel').val(data.Rbc_telefono);         
      }     
     });
      
  });
});


File php:


PHP:
<?php
include('includes/dbconnection.php');
if (isset($_POST['cog_nome'])) {
echo "Sono nel programma ";   
    $sql = "SELECT * FROM rubrica where Rbc_cognome ='".$_POST['cog_nome']."' and Rbc_tipo_contatto ='".$_POST['consulente']."'";
    $query = $dbh -> prepare($sql);
    $query->execute();
    $results=$query->fetchAll(PDO::FETCH_OBJ);
    
    if($query->rowCount() > 0)    {
        foreach($results as $row) {
            
            $arr = array ("Rbc_codfis"=>$row->Rbc_codfis,"Rbc_indirizzo"=>$row->Rbc_indirizzo,"Rbc_mail"=>$row->Rbc_mail,"Rbc_telefono"=>$row->Rbc_telefono1);
            echo json_encode($arr);     
         }
    }else{

        echo 'Errore';
    }
    
}
?>

Credo che anche se ci fosse qualche problema logico, l'echo "sono nel programma" dovrei vederlo, o sbaglio? è come se non chiamasse proprio la funzione...
 
Tommy ho risolto, dopo aver sistemato parentesi e cavolate varie, mi sono accorto che al campo tipo, sul Db scrivevo l'id mentre dalla query cercavo la descrizione...es. AVVOCATO id 79 cercavo AVVOCATO ma su db avevo 79. Comunque il problema principale credo erano appunto le parentesi e qualche virgola mancante... domani provo per bene, ora ho fatto un test al volo e ti aggiorno...

grazie mille
Notte
E
 

Discussioni simili