Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Problema con mysql

  1. #1

    Problema con mysql

    Ciao a tutti e scusate per il disturbo...ho un form di invio dati con un campo chiamato titolo.
    La parola scritta in quel campo si inserirà nel database.
    Si può fare che se una persona scrive tipo..."ciao" nel campo titolo e poi ne viene un'altra e riscrive "ciao" ma gli dice che è gia usata ?
    sono disperato ho provato in tutti modi...
    adesso posto il codice che ho usato per il controllo però non va...
    Codice PHP:
    <?
    include("foot.inc.php");
    include(
    "config.inc.php");
    top();
    $titolo $_POST['titolo'] ;

    $controllo_db mysql_query ("SELECT *
    FROM `news` 
    WHERE `titolo` = '
    $titolo'
    LIMIT 0 , 1   "
    );
    $risultato_controllo mysql_num_rows($controllo_db);
    if (
    $titolo == $risultato_controllo ): echo "NO è gia usata";
    else :
    echo 
    "ok va bene";
    aiuto risp

  2. #2
    mysql_num_rows($controllo_db); ti restituisce il numero di righe trovate, è un numero quindi non sarà mai uguale alla parola trovata, che è un testo, cambia con
    if ($risultato_controllo>0) : etc...

  3. #3
    scusa perchè se metto if($risultato_controllo>0):etc...
    che significherebbe quel > ?
    me lo potresti spiegare perfavore?

  4. #4
    ti posto il codice che ho usato per fare tutto ciò :
    Codice PHP:
    <?
    include("top_foot.inc.php");
    include(
    "config.inc.php");
    top();
    $titolo $_POST['titolo'] ;
    //...

    //...
    $controllo_db mysql_query ("SELECT *
    FROM `news` 
    WHERE `titolo` = '
    $titolo'
    LIMIT 0 , 1   "
    );
    $risultato_controllo mysql_num_rows($controllo_db);
    if (
    $risultato_controllo ): echo "Ok";
    else :
    echo 
    "No";
    //...
     
    $db mysql_connect($db_host$db_user$db_password);
      if (
    $db == FALSE)
        die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php");

      
    mysql_select_db($db_name$db)
        or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
     
    $query "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '', '', '', '')";
      if (
    mysql_query($query$db))
        echo 
    "L'articolo è stato inserito correttamente";
      else
        echo 
    "Errore durante l'inserimento";
      

      
    mysql_close($db);
      endif; 
    // chiude la verifica della presenza dei dati
    foot();
    ?>

  5. #5
    $risultato_controllo è il numero delle righe trovate, quindi se sarà maggiore cioè > di zero è stata già trovata almeno una riga simile, diversamente non ci sono righe uguali

  6. #6
    Grazie !
    ti ho postato il codice che ho usato gli daresti un'occhiata perfavore...?
    perche ho provato a inserire quello che mi hai detto tu ma mi da lo stesso risultato...

    TI prego aiutami so che sei 3000 volte piu bravo di me in questo campo.

  7. #7
    prima di tutto riordina lo script, non so cosa contengano i files top_foot_inc.php e config.inc.php, ma ad occhio tutta la parte

    Codice PHP:
    $db mysql_connect($db_host$db_user$db_password); 
      if (
    $db == FALSE
        die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php"); 

      
    mysql_select_db($db_name$db
        or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); 
    va subito dopo top();

    poi ci va il codice di controllo della parola già inserita

    Codice PHP:
    $titolo $_POST['titolo'] ; 
    $controllo_db mysql_query ("SELECT * 
    FROM contatti 
    WHERE nome = '
    $titolo
    "
    ); 
    $risultato_controllo mysql_num_rows($controllo_db); 
    if (
    $risultato_controllo ) {
    echo 
    "Ok"
    } else { 
    echo 
    "No"


    se ti dà "ok" presumo tu voglia poi inserire la riga titolo, poichè non esiste quindi dopo di echo "Ok" ci copi

    Codice PHP:
    $query "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '', '', '', '')"
      if (
    mysql_query($query$db)) 
        echo 
    "L'articolo è stato inserito correttamente"
      else 
        echo 
    "Errore durante l'inserimento"
    se non ti imbrogli nei passaggi, dovrebbe funzionare correttamente

  8. #8
    Grazie mille scusami se non ti ho risposto ma stavo pranzando...
    provo il codice se va tutto a buon fine sei il migliore.Ma se al contrario non va a buon fine ti faccio sapere l'errore ok?grazie


    HO controllato tutto mi dice "No"
    se nel campo del form titolo metto un nome
    anche se metto ciao, e, ciao non esiste mi dice "no"
    xke?

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.