Column 'username_proprietario' in where clause is ambiguous

minatore

Utente Attivo
25 Set 2007
410
0
0

Mi sono perso, adesso non so cosa dirti, forse stiamo parlando di un problema diverso.
Comunque quando salvi dei dati, prova a ricavarti l'id e non salvare nomi come la username.
Hai un indirizzo dove vedere delle pagine e dire in quale pagina hai l'intoppo
Ciao
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0

Mi sono perso, adesso non so cosa dirti, forse stiamo parlando di un problema diverso.
Comunque quando salvi dei dati, prova a ricavarti l'id e non salvare nomi come la username.
Hai un indirizzo dove vedere delle pagine e dire in quale pagina hai l'intoppo
Ciao

No, lavoro in locale.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Lo script del penultimo post di criric non funziona: non so perché, ma cliccando sul link nemmeno aggiunge il dato in tabella
forse non lo aggiunge perche è gia presente
il primo problema del link è stato risolto?
Puoi ripostarlo come l'hai modificato?
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
forse non lo aggiunge perche è gia presente
il primo problema del link è stato risolto?
Puoi ripostarlo come l'hai modificato?
Ho notato che tu nel codice scrivevi user&insert e pensavi che io avessi due variabili user che potessero confondere il php, ma non era così quindi ho modificato lo script come serviva a me:
PHP:
<?php 
if (!isset($_SESSION)) { 
    session_start(); 
} 
if (!isset($_SESSION['utente'])) { 
    header("location: login2.php?azione=login"); 
    exit(); 
} 
?>   
<!-- tralascio l'html -->     
<?php 
require_once "connessione.php"; 
if (isset($_GET['user'])) { 
    $query = "SELECT * FROM amici_temp  
                   WHERE username_proprietario = '" . $_SESSION['utente'] . "'  
                         && username_amico = '" . $_GET['user'] . "'"; 
    $result = mysql_query($query) or die(mysql_error()); 
    if (mysql_num_rows($result) == 0) { 
        $q = "INSERT INTO amici_temp (username_proprietario, username_amico)  
                 VALUES ('" . $_SESSION['utente'] . "', '" . $_GET['user'] . "')"; 
        $query = mysql_query($q); 
        $inviautente = mysql_query($query) or die(mysql_error()); 
        header("Refresh: 1; URL= profile2.php?id={$_SESSION['utente']}"); 
    } 
} 
$query = "SELECT * FROM amici  
                   WHERE username_proprietario = '" . $_SESSION['utente'] . "'  
                         && username_amico = '" . $_GET['id'] . "'"; 
$result = mysql_query($query) or die(mysql_error()); 
if (mysql_num_rows($result) == 0) { 
    echo "<a href=\"?user=" . $_GET['id'] . "\" onclick=\"return(confirm('Sei sicuro di voler inoltrare la richiesta di amicizia?'))\">Aggiungi agli amici!</a>"; 
} else { 
    echo ""; 
} 
?>

Ma ogni volta che si aggiorna la pagina o la si carica per la prima volta aggiunge comunque i dati nel database, come mai?
Grazie ancora per il tuo aiuto:D
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
come la richiami questa pagina?
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
come la richiami questa pagina?

Allora:
ho una pagina che si chiama result_search2.php?id=nomeutente, questa pagina deriva da un form di ricerca che passa correttamente l'id. In questa pagina result_search2.php ci sono diversi iframe, uno dei quali è quello che contiene questo script. Ecco tutto.
Spero di essere stato chiaro.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
no non mi è chiaro
è un form che richiama la pagina result_search2.php?
o un link?

puoi postare il richiamo

in ogni caso secondo me i dati non gli arrivano nel modo corretto
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
no non mi è chiaro
è un form che richiama la pagina result_search2.php?
o un link?

puoi postare il richiamo

in ogni caso secondo me i dati non gli arrivano nel modo corretto

C'è un form di ricerca che ti stampa, una volta effettuata la ricerca, un link alla pagina result_search2.php con il nome dell'utente cercato. Comunque ecco il codice del form di ricerca:
PHP:
<?php 
            if(!isset($_POST['cerca'])){ ?> 
             
                <form method="post" action="#" id="formricerca" style="alignment-adjust:central"> 
                     
                    <input type="text" name="username" id="username" style="margin-bottom:5%; width:65%; height:9%; font-size:120%; border:1px solid black"; placeholder="Cerca una persona qui"/> 
                    <input type="submit" name="cerca" id="cerca" value="Cerca" style="width:20%; height:9%; color:black; background-color:white; border:1px solid black; font-family:'Palatino Linotype', 'Book Antiqua', Palatino, serif; font-size:110%; margin-bottom:5%"/> 
                </form>         
    <?php    } else { 
                                 
                        $username = mysql_real_escape_string($_POST['username']); 
                        if($username == ""){ 
                     
                        echo "Attenzione, devi compilare tutti i campi"; 
                     
                        } else { 
                         
                        $recuperadati = mysql_query("SELECT * FROM utenti WHERE username= '$username'"); 
                                  
                                $verificadati = mysql_num_rows($recuperadati);  
                                  $risultato = ucwords($username);
$risultato2 = strtolower($risultato);

                                if($verificadati == 1){  
                                echo "<a href='result_search2.php?id=".$risultato2."' class='username'>$risultato</a>"; 
                                     
                                    } else {  
                                  
                                    echo "<p class='noresult'>Nessun risultato trovato! Aggiorna la pagina per eseguire una nuova ricerca.</p>";  
                                    }  
                              
                            }  
                          
                        }  
                      
?>
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
se ti fa la insert come arrivi vuol dire che $_GET['user'] è settato altrimenti non puo entrare in quella condizione
metti un var_dump() prima e vediamo cosa esce
PHP:
var_dump($_REQUEST);
if (isset($_GET['user'])) {
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
se ti fa la insert come arrivi vuol dire che $_GET['user'] è settato altrimenti non puo entrare in quella condizione
metti un var_dump() prima e vediamo cosa esce
PHP:
var_dump($_REQUEST);
if (isset($_GET['user'])) {

Ecco quello che viene fuori:array(3) { ["id"]=> string(4) "ciao (è un username di prova)" ["__cfduid"]=> string(43) "d2c6b90c3e53ea36f8247c25078e6669e1344764386" ["PHPSESSID"]=> string(26) "amf6le844909jeuut63f5ulnj6" }
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
allora non capisco perche non dovrebbe funzionare

prova a stampare tutte e tre le query

PHP:
echo $query;
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
allora non capisco perche non dovrebbe funzionare

prova a stampare tutte e tre le query

PHP:
echo $query;

Il problema non è che non funziona, bensì che ogni volta che aggiorno la pagina result_search2.php mi inserisce i dati username_proprietario e username_amico all'interno del database, senza che io clicchi sul link 'Aggiungi agli amici!'. Spero di essere stato abbastanza chiaro :)
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
si mi riferivo a quello
ma se mi confermi che nell indirizzo non c'è ?user=pincopallo e comunque esegue lo stesso quello che c'è dentro questa condizione
PHP:
if (isset($_GET['user'])) {

}
non so cosa pensare
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
si mi riferivo a quello
ma se mi confermi che nell indirizzo non c'è ?user=pincopallo e comunque esegue lo stesso quello che c'è dentro questa condizione
PHP:
if (isset($_GET['user'])) {

}
non so cosa pensare

Quindi non c'è modo di risolvere la situazione?
Nemmeno se riscriviamo il codice insieme?
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
Ispezionando l'elemento con google chrome ho notato che l'iframe ha l'URL con ?id=... mentre dalla sorgente dell'iframe nell'url spunta ?user=..., come mai?

Credo di aver capito il problema: bacheca_visualizza5.php ha già qualcosa dopo il ? quindi, quando gli chiedo di aprire l'alert con ?user=... lui è come se si confondesse con ?id=... come posso risolvere quindi la situazione?
Grazie ancora criric :D
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
riprova aggiungendo il parametro insert nel link "aggiungi agli amici" e nella condizione, senza cambiare altro
PHP:
<?php
require_once "connessione.php";
if (isset($_GET['user']) && isset($_GET['insert'])) {
    $query = "SELECT * FROM amici_temp  
                   WHERE username_proprietario = '" . $_SESSION['utente'] . "'  
                         && username_amico = '" . $_GET['user'] . "'";
    $result = mysql_query($query) or die(mysql_error());
    if (mysql_num_rows($result) == 0) {
        $q = "INSERT INTO amici_temp (username_proprietario, username_amico)  
                 VALUES ('" . $_SESSION['utente'] . "', '" . $_GET['user'] . "')";
        $query = mysql_query($q);
        $inviautente = mysql_query($query) or die(mysql_error());
        header("Refresh: 1; URL= profile2.php?id={$_SESSION['utente']}");
    }
}
$query = "SELECT * FROM amici  
                   WHERE username_proprietario = '" . $_SESSION['utente'] . "'  
                         && username_amico = '" . $_GET['id'] . "'";
$result = mysql_query($query) or die(mysql_error());
if (mysql_num_rows($result) == 0) {
    echo "<a href=\"?insert&user=" . $_GET['id'] . "\" onclick=\"return(confirm('Sei sicuro di voler inoltrare la richiesta di amicizia?'))\">Aggiungi agli amici!</a>";
} else {
    echo "";
}
?>
 

hackersatifal

Utente Attivo
9 Ago 2012
238
0
0
riprova aggiungendo il parametro insert nel link "aggiungi agli amici" e nella condizione, senza cambiare altro
PHP:
<?php
require_once "connessione.php";
if (isset($_GET['user']) && isset($_GET['insert'])) {
    $query = "SELECT * FROM amici_temp  
                   WHERE username_proprietario = '" . $_SESSION['utente'] . "'  
                         && username_amico = '" . $_GET['user'] . "'";
    $result = mysql_query($query) or die(mysql_error());
    if (mysql_num_rows($result) == 0) {
        $q = "INSERT INTO amici_temp (username_proprietario, username_amico)  
                 VALUES ('" . $_SESSION['utente'] . "', '" . $_GET['user'] . "')";
        $query = mysql_query($q);
        $inviautente = mysql_query($query) or die(mysql_error());
        header("Refresh: 1; URL= profile2.php?id={$_SESSION['utente']}");
    }
}
$query = "SELECT * FROM amici  
                   WHERE username_proprietario = '" . $_SESSION['utente'] . "'  
                         && username_amico = '" . $_GET['id'] . "'";
$result = mysql_query($query) or die(mysql_error());
if (mysql_num_rows($result) == 0) {
    echo "<a href=\"?insert&user=" . $_GET['id'] . "\" onclick=\"return(confirm('Sei sicuro di voler inoltrare la richiesta di amicizia?'))\">Aggiungi agli amici!</a>";
} else {
    echo "";
}
?>

Ho appena provato ma la situazione è sempre la stessa: aggiornando la pagina result_search2.php mi ricarica il dato senza che io clicchi sul link 'Aggiungi agli amici!'.
 

minatore

Utente Attivo
25 Set 2007
410
0
0

Ciao, solo per curiosità, cambia questo dato e vediamo che succede, è solo una prova, quello che sto facendo non è corretto
PHP:
if (mysql_num_rows($result) == 1)
però prima azzera la tabella amici
 
Discussioni simili
Autore Titolo Forum Risposte Data
max1974 [Javascript] Datatables Export PDF Column Javascript 0
F [MySQL] Warning 1265 data truncated for column... MySQL 5
U [PHP] form per ricerca multipla: Unknown column 'undefined' in 'where clause' PHP 2
S Column 'regione' in where clause is ambiguous MySQL 6
L Column count doesn't match value ..... Classic ASP 2
I sessione username PHP 1
I sessione username scarica file PHP 1
S [PHP] estrarre dati sito web protetto con username e password PHP 13
P scavalca il controllo dello username PHP 1
C Login con username con accento tipo "Canicattì" PHP 5
L form username e password Classic ASP 4
I username e password per il database PHP 4
P controllo username Ajax 6
L funzione per nascondere username PHP 5
A Problema con UPDATE table SET username = $_SESSION["username"] PHP 22
A haccess regex username PHP 11
K Cambiare username Supporto Mr.Webmaster 1
Z Joomla 2.5.8 con problemi di accesso al admin panel username e password non riconosciuti Joomla 0
V Recuperare Username di una Sessione PHP 3
S Estrazione Username PHP 44
S Problemi estrazione username PHP 59
E Salvataggio username (era: Problema PHP 5.3.6) PHP 15
D Ottene username account Twitter PHP 4
borgo italia username e password Discussioni Varie 9
foki Problema Controllo Username HELP PHP 3
L Creare proprietario, gruppi e utenti per permessi cartella e file PHP 4

Discussioni simili