Visualizzazione dei risultati da 1 a 9 su 9

Discussione: select mysql

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    417

    select mysql

    ho un problema che non riesco a risolvere, ad un certo punto di uniscrizione utenti devo verificare la presenza se un nik è gia presente sul db, ho creato questa parte di codice ma non funziona mi risponde sempre utente già presente. il codice:
    <?php
    function Check($username) {
    if ("SELECT username FROM users WHERE username='$username'") $stop = "<center>"Il Nick è già presente nel nostro database"</center>
    ";
    return($stop);
    }
    Check($username);

    if (!$stop) {
    echo "Messaggio ecc.........";
    } else {
    echo $stop;
    }
    ?>
    mi date un aiuto? grazie
    luigi

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    417
    ho abilitato la visualizzazione errori e non mi dà alcun errore, ho modificato il codice cosi: (tralascando le prime e ultime parti)
    function Check($username) {
    global $stop;
    if ((!$username) || ($username=="") || (ereg("[^a-zA-Z0-9_-]",$username))) $stop = "<center>Nickname non valido</center>
    ";
    if (strrpos($username,' ') > 0) $stop = "<center>Il Nickname non deve contenere spazi</center>";
    if (("SELECT username FROM users WHERE username='$username'") > 0) $stop = "<center>Il Nick è già presente nel nostro database</center>
    ";
    return($stop);
    }
    Check($username);
    if (!$stop) {
    echo "Messaggio ecc.........";
    } else {
    echo $stop;
    }
    se scrivo spazio vuoto nel user risponde correttamente "Nickname non valido"
    se scrivo il nick con spazio correttamente "Il Nickname non deve contenere spazi"
    ma se scrivo sia un utente registrato che un utente nuovo mi continua senza verificarlo, il nick registra giustamente quello che inserisco infatti ho fatto una verifica mettendo anche
    echo $nickname;
    e mi da il nick giusto che inserisco.
    hai degli ulteriori consigli? grazie Luigi

  4. #4
    non si nota dove esegui la query... intendo dire mysql_query. e poi mi sfugge il significato di questa riga:

    Codice PHP:
    if (("SELECT username FROM users WHERE username='$username'") > 0

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    417
    infatti è qui che mi sfugge e non capisco cosa devo fare, ho ricavato la riga da php_nuke, se tolgo > 0 allora mi dà tutte le user già inserite.

    non capisco come fare eseguire la query

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    417
    risolto grazie,
    adesso ho un altro problema
    all'inizio della pagina devo verificare una variabile per rimandare a delle funzioni,
    se la variabile ne arriva ne con get ne con post dovrebbe avere il valore $op = "";
    altrimenti dovrei assegnarle il valore che arriva solo che puo ricevere il valore sia con get che cpn post e non riesco a trovare sui manuali come fare.

    se fosse solo con post o get sarebbe facile
    if (!isset($_POST['op'])){
    $op = "";
    } else {
    $op = $_POST['op'];
    }
    ma potendo arrivare nei due modi non mi sbroglio, qualcuno potrebbe aiutarmi
    grazie Luigi

  8. #8
    Studiati questo codice:

    Codice PHP:
    <?php
    $op 
    = isset($_POST['op']) ? $_POST['op'] : (isset($_GET['op']) ? $_GET['op'] : '');
    var_dump($op);
    ?> 
    <form method="post">
    <input type="hidden" name="op" value="post";
    <input type="submit" />
    </form>
    [url="?op=get"]click[/url]

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    417
    perfetto milla grazie Luigi

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.