Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
PHP - Inserimento file nel DB
Forum - PHP - Inserimento file nel DB

Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedì, 01/01/1970
Adesso che sono riuscito a connettermi e ho inquadrato un minimo il linguaggio ho creato la pagina PHP per l'inserimento dei dati, soltanto che mi da errore la linea 40... vi riporto il codice, il risultato che mi ritorna e la riga che mi da errore...mi vien da piangere a pensare che dopo dovrò fare l'FTP per le foto ç_ç

Codice sorgente - presumibilmente Php

  1. <html>
  2. <head>
  3.  
  4. </head>
  5. <body>
  6. <font face="chiller" color="#FF0000" />
  7. <?php if (isset($_GET['addprod'])): ?>
  8.  
  9. <form action="<?php echo $SERVER['PHP_SELF']; ?>" methot="post">
  10. <table>
  11. <tr>
  12. <td width="135">Nome (Italiano): </td>
  13. <td width="630"><input type="text" name="NomeITA" size="106" /></td></tr>
  14. <td>Epoca (Italiano):<td><input type="text" name="EpocaITA" size="106"/></td></tr>
  15. <td>Dimensioni:<td><input type="text" name="Dimensioni" size="106"/></td></tr>
  16. <td>Descrizione (Italiano): <td><textarea name="DescriITA" cols="80"> </textarea></td></tr>
  17. </table>
  18. <input type="submit" name="ok" value="OK" />
  19. </form>
  20.  
  21. <?php else:
  22.  
  23. global $db;
  24. $dbms = 'mysql';  
  25. $dbhost = 'localhost';  
  26. $dbname = 'prodotti';  
  27. $dbuser = 'root';  
  28. $dbpasswd = '';  
  29. $db = mysql_connect($dbhost, $dbuser, $dbpasswd);  
  30. if (!$db)
  31. {
  32. echo "non va il db";
  33. }
  34.  
  35. mysql_select_db($dbname, $db);  
  36. if (!@mysql_select_db('prodotti')) {
  37.         exit('non trovo il db...');
  38. }
  39.  
  40. if(isset($_POST['NomeITA', 'EpocaITA', 'Dimensioni', 'DescriITA'])) {
  41.         $sql = "INSERT INTO prodotti SET NomeITA='$NomeITA', EpocaITA='$EpocaITA', Dimensioni='$Dimensioni', DescriITA='$DescriITA'";
  42.         if (@mysql_query($sql)) {
  43.         echo 'Campo aggiunto correttamente'
  44.         }
  45.         else {
  46.         echo 'Errore riscontrato: ' mysql_error()
  47.         }
  48.        
  49.         echo File presenti nel DB
  50.        
  51.         $result = @mysql_query('SELECT * FROM Prodotti')
  52.         if (!$result) {
  53.                 exit('Si è verificato un errore nel leggere la query') mysql_error()
  54.         }
  55.        
  56.         while ($row = mysql_fetch_array($result)) {
  57.                 echo $row['NomeITA', 'EpocaITA', 'Dimensioni', 'DescriITA']
  58.         }
  59.         echo '<a href="'$_SERVER['PHP_SELF'] '?addprod=1> Inserisci un altro prodotto </a>';
  60. end if;
  61. ?>
  62. </body>
  63. </html>



ritorna:

Parse error: syntax error, unexpected ',', expecting ']' in C:\xampp\htdocs\pag.php on line 40

linea 40: if(isset($_POST['NomeITA', 'EpocaITA', 'Dimensioni', 'DescriITA'])) {

è sicuramente un'errore stupido nella grammatica del PHP (provengo da un orribile mondo in VB, nn è facile per me...) ma nn rieco a individuarlo >.<

PM Quote
Avatar
NewAge (Normal User)
Pro


Messaggi: 153
Iscritto: 23/08/2009

Segnala al moderatore
Postato alle 21:25
Venerdì, 28/08/2009
Usando la variabile post non puoi prendere direttamente tutti i nome separandoli dalla virgola per vedere se sono stati assegnati con isset, mi spiego:

Devi fare:

if(!isset($_POST['NomeITA'] || !isset($_POST['EpocaITA'] || !isset($_POST['Dimensioni'] || !isset($_POST['DescriITA']) ){

echo"errore";

}else{

Successo!

}

PS: "!isset()" significa " se non è stata impostata la variabile", il ! significa negazione. Mentre "||" significa "or"

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 11:19
Sabato, 29/08/2009
ti ringrazio =) è che nn sapervo come fare l'OR... l'isset e il ! li avevo intuiti ^^ (! è la negazione anche in java fra l'altro <<;)

Ultima modifica effettuata da il 29/08/2009 alle 11:20
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:59
Martedì, 01/09/2009
scusate il doppio post, ma suppongo che un edit nn sarebbe servito ._.

Parse error: syntax error, unexpected '}', expecting ',' or ';' in C:\xampp\htdocs\pag.php on line 44

dove la linea 44 è: }

sempre nello stesso codice.

if(isset($_POST['NomeITA' || 'EpocaITA' || 'Dimensioni' || 'DescriITA'])) {
    $sql = "INSERT INTO prodotti SET NomeITA='$NomeITA', EpocaITA='$EpocaITA', Dimensioni='$Dimensioni', DescriITA='$DescriITA'";
    if (@mysql_query($sql)) {
    echo 'Campo aggiunto correttamente'
    }
    else {
    echo 'Errore riscontrato: ' mysql_error()
    }


la riga 44 è la prima }... questa mi è nuova ._.

PM Quote
Avatar
kejan (Normal User)
Newbie


Messaggi: 20
Iscritto: 12/08/2009

Segnala al moderatore
Postato alle 18:26
Giovedì, 03/09/2009
non sono sicuro prova cosi
Codice sorgente - presumibilmente Php

  1. if(isset(
  2. $_POST['NomeITA'] OR $_POST['EpocaITA'] ||
  3. $_POST['Dimensioni'] OR $_POST['DescriITA'])) {
  4. $sql= "INSERT INTO prodotti SET NomeITA='$NomeITA', EpocaITA='$EpocaITA', Dimensioni='$Dimensioni', DescriITA='$DescriITA'";
  5. if(@mysql_query($sql)){
  6. echo 'Campo aggiunto correttamente';
  7. }else {
  8. echo 'Errore riscontrato:' trigger_error(mysql_error(),E_USER_ERROR);
  9. }


PM Quote