Visualizzazione risultati 1 fino 17 di 17

Discussione: Parse error: syntax error, unexpected ';' in /membri/enkantar2/INCLUDE/nuovacitta.php

  1. #1
    Guest

    Predefinito Parse error: syntax error, unexpected ';' in /membri/enkantar2/INCLUDE/nuovacitta.php

    Codice PHP:
    <?php

    session_start
    ();
    $server = $_SESSION['server'];
    $myusername = $_SESSION['myusername'];

    $citta = $_POST['citta'];
    $x=rand(0,320);//genero x
    $y=rand(0,320);//genero y

    include ("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 ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200','100','100','100')";
    if (
    mysql_query($query, $db))
    echo
    "Complimenti, ".$citta." è stata fondata";
    else
    echo
    "Errore durante l'inserimento";

    ?>
    Questo è il mio codice, ma mi dà un errore nella linea 14, ovvero questa:

    Codice PHP:
    $query("INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200','100','100','100')";
    L'errore è questo:

    Parse error: syntax error, unexpected ';' in /membri/enkantar2/INCLUDE/nuovacitta.php

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,744

    Predefinito

    Codice PHP:
    $query("INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200','100','100','100')");
    Ciao!
    Ultima modifica di alemoppo : 24-02-2010 alle ore 16.58.28

  3. #3
    L'avatar di andreafallico
    andreafallico non è connesso Super Moderatore
    Data registrazione
    02-06-2009
    Messaggi
    1,981

    Predefinito

    $query("INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200','100','100','100')";
    Devi mettere uguale =
    Codice PHP:
    $query = "INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('{$citta}','{$db_utente[id]}','{$x}','{$y}','200','100','100','100')";
    Ultima modifica di andreafallico : 24-02-2010 alle ore 17.10.34

  4. #4
    Guest

    Predefinito

    Grazie mille, ma adesso mi dice" Errore nella selezione del database. Verificare i parametri nel file config.inc.php"

    Ecco il config.inc.php:

    Codice PHP:
    <?php
    $host
    ="localhost"; // Hostname
    $username="enkantar"; // Mysql username
    $password="***********"; // Mysql password
    $db_name="my_enkantar"; //Nome del Database
    // Procedimento per connettersi al Database
    mysql_connect("$host", "$username", "$password")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");
    ?>
    Cosa sbaglio?

  5. #5
    Guest

    Predefinito

    Hai attivato il database dal pannello di controllo? Comunque lascia vuota la variabile $password, su AlterVista non serve.

  6. #6
    Guest

    Predefinito

    Si è attivato ed è al livello 4.

  7. #7
    Guest

    Predefinito

    Ah, ecco, forse ho trovato. Modifica il file config.inc.php così:
    Codice PHP:
    <?php
    $host
    ="localhost"; // Hostname
    $username="enkantar"; // Mysql username
    $password="***********"; // Mysql password
    $db_name="my_enkantar"; //Nome del Database
    // Procedimento per connettersi al Database
    $db = mysql_connect("$host", "$username", "$password")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");
    ?>

  8. #8
    Guest

    Predefinito

    Nuovo errore:

    Fatal error: Call to undefined function: () in /membri/enkantar/INCLUDE/nuovacitta.php on line 14

  9. #9
    Guest

    Predefinito

    Posta il codice completo di tutte e due le pagine, perché no nsi capisce molto, poi vedo due mysql_select_db() che non vanno bene.

  10. #10
    Guest

    Predefinito

    Grazie, ma ho risolto! Adesso ho un altro errore ancora:

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '58','200;','100','100','100')' at line 1
    58 presumo sia o $x o $y, 200, 100, 100 e 100 i valori che avevo digitato. Cosa sbaglio?

    Codice PHP:
    <?php

    session_start
    ();
    $server = $_SESSION['server'];
    $myusername = $_SESSION['myusername'];

    $citta = $_POST['citta'];
    $x=rand(0,320);//genero x
    $y=rand(0,320);//genero y


    require ("config.inc.php");
    mysql_query("INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200;','100','100','100')",$db) || die(mysql_error());
    if (
    mysql_query($query, $db))
    echo
    "Complimenti, ".$citta." è stata fondata";
    else
    echo
    "Errore durante l'inserimento";

    ?>

  11. #11
    L'avatar di andreafallico
    andreafallico non è connesso Super Moderatore
    Data registrazione
    02-06-2009
    Messaggi
    1,981

    Predefinito

    Ti ho risposto sopra.

    Codice PHP:
    mysql_query("INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('{$citta}','{$db_utente[id]}','{$x}','{$y}','200','100','100','100')");

  12. #12
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,744

    Predefinito

    Citazione Originalmente inviato da enkantar Visualizza messaggio
    Codice PHP:
    [...]
    mysql_query("INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200;','100','100','100')",$db) || die(mysql_error());
    if (
    mysql_query($query, $db))
    [...]
    Nota che fai 2 volte la query; e poi se fai così la variabile $query non esiste!

    Ciao!

  13. #13
    Guest

    Predefinito

    Quindi che dovrei fare?

  14. #14
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,744

    Predefinito

    Prova in questo modo:
    Codice PHP:
    <?php

    session_start
    ();
    $server = $_SESSION['server'];
    $myusername = $_SESSION['myusername'];

    $citta = $_POST['citta'];
    $x=rand(0,320);//genero x
    $y=rand(0,320);//genero y


    require ("config.inc.php");
    $query = "INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('$citta','$db_utente[id]','$x,'$y','200;','100','100','100')";
    if (
    mysql_query($query, $db))
    echo
    "Complimenti, ".$citta." è stata fondata";
    else
    echo
    "Errore durante l'inserimento. Dettagli:".mysql_error();
    mysql_close($db);
    ?>
    Ultima modifica di alemoppo : 24-02-2010 alle ore 20.03.09

  15. #15
    Guest

    Predefinito

    Ottimo!!! Funziona! Adesso però ho un enorme favore da chiedere: se io volessi fare in modo che se la combinazione di coordinate è già esistente se ne crei un altra?

    ES:
    ho una città su 12:12 e i valori casuali attribuiti a x e a y sono proprio 12 e 12. Come faccio in modo che in questo caso si attribuiscano differenti valori a x e y? Questa domanda la facciodato che stò realizzando un browser game e ovviamente 2 città non possono occupare le stesse coordinate geografiche.

  16. #16
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,744

    Predefinito

    Citazione Originalmente inviato da enkantar Visualizza messaggio
    Ottimo!!! Funziona! Adesso però ho un enorme favore da chiedere: se io volessi fare in modo che se la combinazione di coordinate è già esistente se ne crei un altra?

    ES:
    ho una città su 12:12 e i valori casuali attribuiti a x e a y sono proprio 12 e 12. Come faccio in modo che in questo caso si attribuiscano differenti valori a x e y? Questa domanda la facciodato che stò realizzando un browser game e ovviamente 2 città non possono occupare le stesse coordinate geografiche.
    Prima di quella query dovresti farne un'altra per vedere se le coordinate sono già usate, no??
    ad esemio così:
    Codice PHP:
    do
    {
    $query = 'SELECT * FROM '.$server.'_città WHERE x=\''.$x.'\' AND y=\''.$y.'\'';
    $ris = mysql_query($query,$db);
    if(
    mysql_num_rows($ris) > 0)
    $ok = 0;
    else
    $ok = 1;
    }
    while(
    $ok == 0);
    p.s. non l'ho provato, quindi potrebbero esserci errori

    Ciao!
    Ultima modifica di alemoppo : 24-02-2010 alle ore 20.11.14

  17. #17
    Guest

    Predefinito

    Ok, quel problema è risolto, ma adesso ho un'altra domanda:

    Questo è il codice: vorrei fare in modo che setti l'attivazione dell'utente fino ad allora su 0 su 1 e che nella voce "capitale" mi mostri l'id della città appena creata. Cosa sbaglio?
    Codice PHP:
    <?php

    include ("../INCLUDE/config.inc.php");
    session_start();
    $server = $_SESSION['server'];
    $myusername = $_SESSION['myusername'];

    switch(
    $_GET['view']) {
    case
    'nuovacitta':
    $citta = $_POST['citta'];
    //imposto le coordinate
    $x=rand(0,50);//genero x
    $y=rand(0,50);//genero y

    //creo la città
    do
    {
    $query = 'SELECT * FROM '.$server.'_città WHERE x=\''.$x.'\' AND y=\''.$y.'\'';
    $ris = mysql_query($query,$db);
    if(
    mysql_num_rows($ris) > 0)
    $ok = 0;
    else
    $ok = 1;
    }
    while(
    $ok == 0);
    $query = "INSERT INTO ".$server."_città (nome,proprietario,x,y,legno,marmo,grano,ferro) VALUES ('{$citta}','{$db_utente[id]}','{$x}','{$y}','200','100','100','100')";
    if (
    mysql_query($query, $db))
    {
    echo
    "Complimenti, ".$citta." è stata fondata";
    //estraggo l'id della città
    $query = "SELECT id FROM ".$server."_città WHERE nome='$citta'";
    $result = mysql_query($query, $db);
    $db_città = mysql_fetch_array($result);
    //e lo metto come capitale. setto anche l'attivazione su 1
    $query = "INSERT INTO ".$server."_utenti (attivazione,capitale) VALUES ('{1}','{$db_città[id]}')";
    }
    else
    {
    echo
    "Errore durante l'inserimento";
    }

    default:
    $query = "SELECT username, razza, attivazione FROM ".$server."_utenti WHERE id='$id'";
    $result = mysql_query($query, $db);
    $db_utente = mysql_fetch_array($result);
    if (
    $db_utente[attivazione] != 0)
    {
    echo
    "hai gi&agrave; una citt&agrave;!!!"
    }
    else
    {
    echo
    "Ancora non hai fondato nessuna citt&agrave;! Fonda la tua capitale";
    ?>
    <html>
    <tr><form action="index.php?view=nuovacitta" method="post">
    <table width="101%" border="0">
    <tr>
    <td width="15%">Nome della citt&agrave;:</td>
    <td width="20%"><input type="text" name="citta" id="citta" size="30" /></td>
    <td>&nbsp;</td>
    </tr>
    </table>
    <input name="Submit" type="submit" value="Fonda" />
    </form>
    </tr>
    </form>
    </html>
    <?php
    }
    break;
    }
    ?>
    Ultima modifica di enkantar : 24-02-2010 alle ore 21.03.14

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •