Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33

Discussione: [MySql] Connessione db

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    44

    [MySql] Connessione db

    Buonasera,
    sto creando una pagina php che permetta di inserire una riga in un database esistente
    Il db è cosi strutturato:

    nome tabella: sms
    campi: id (autoincremental)- numero - testo

    ecco il codice che ho inserito.....ma che non funge:

    <?
    include("config.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.php");
    else
    mysql_query= 'INSERT INTO sms(numero,testo) VALUES('valore numero', 'valore testo')';
    ?>

    Note; La connessione sembra avvenire (infatti non appare il messaggio di errore) -
    La stringa inserita come comando SQL all'interno di phpMyAdmin funziona

    Un'altra cosa...questo script inserito in una pagina php dovrebbe partire ogni volta che qualcuno apre la pagina vero?

  2. #2
    Per prima cosa NON usare lo short open tag, utilizza il tag di apertura completo (<?php).

    Per il resto, ti consiglio di leggere questa guida e di far sempre riferimento al manuale ufficiale:

    http://php.html.it/guide/leggi/77/gu...mysql-pratica/
    http://www.php.net/mysql_query
    http://www.php.net/mysql_select_db

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    44
    grazie.....
    quello di chiusura rimane invariato vero?
    ma nel codice ci sono altri errori?

    Buona notte
    Antonello

  4. #4
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152

    single and double quotation marks delimiters

    Hai scritto la mysql_query con l' = come dovesse essere una variabile, e poi abbiamo gli apici che comunque entrerebbero in conflitto.

    Questo eseguito come query dal pannello MyAdmin ti funziona perché la sintassi della query in se', è corretta; per quanto io aggiungo un paio di spaziature prima delle "(" :

    INSERT INTO sms (numero, testo) VALUES ('valore numero', 'valore testo');


    Se la vuoi riassumere in una variabile, ecco che già servono altri apici di delimitazione stringa; e allora usiamo " e ' alternati (altrimenti entrano in conflitto):

    $query = "INSERT INTO sms (numero, testo) VALUES ('valore numero', 'valore testo')";


    E col PHP la puoi sottomettere così, con la funzione mysql_query() :

    mysql_query("INSERT INTO sms (numero, testo) VALUES ('valore numero', 'valore testo')");

    o così:

    mysql_query($query);

  5. #5
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    765
    inoltre come ha detto filippo seleziona anche il database con mysql_select_db

  6. #6
    In pratica:
    Codice PHP:
    <?php 
    include("config.php"); 
    $db mysql_connect($db_host$db_user$db_password);
     if (
    $db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.php");
     else{
    mysql_select_db("nome_db");
    $query"INSERT INTO sms(numero,testo) VALUES('valore numero', 'valore testo')";
     
    mysql_query($query);
    }
    ?>

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    44
    Grazie........adesso l'inserimento funziona perfettamente......


    Purtroppo non riesco ancora a inserire nel database i valori delle due variabili che mi vengono forniti da un servizio esterno

    Ho provato così:

    <?php
    include("config.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");
    else
    mysql_select_db ("nomedatabase");

    CON QUESTE STRINGHE PROVO A RICEVERE LE DUE VARIABILI ESTERNE (???)
    $numero=$_POST['sender'];
    $testo=$_POST['message'];

    INSERISCO LE VARIABILI NEL DATABASE
    mysql_query("INSERT INTO sms (numero, testo) VALUES ($numero, $testo)");
    $sql = "SELECT * FROM sms ORDER BY id";
    $Query = mysql_query($sql);
    while($riga = mysql_fetch_array($Query)) {
    echo "<h1>".$riga['numero']."</h1>
    ";
    echo $riga['testo']."
    ";
    }

    ?>

  8. #8
    $numero=$_POST['sender'];
    $testo=$_POST['message'];
    ciò funziona se le variabili sono passate per POST invece se sono passate per GET devi fare così:
    $numero=$_GET['sender'];
    $testo=$_GET['message'];
    Dipende dal method usato nel form che passa i valori insomma

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    44
    Grazie per la risposta,
    l'assistenza del servizio mi ha detto che le variabili mi vengono inviate in tempo reale (in formato http post)....e le variabili sono queste:
    $_POST['sender']
    $_POST['message']

    Secondo te...prima di ricevere le variabili non bisogna aprire un connessione con il database?

  10. #10
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152
    Originariamente inviato da atlas23
    .. le variabili mi vengono inviate in tempo reale (in formato http post)....
    Ti vengono inviate DOVE ?

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.