Trattare con i form

MaNDraKe32

Nuovo Utente
31 Mag 2008
14
0
0
Salve a tutti mi sono appena iscritto e ho gia un gran problema...Premetto che sono alle primissime armi con php e il più delle volte non so bene di cosa si parla...comunque vi espongo il mio problema...Ho una pagina che visualizza la data e il titolo di una tabella cliccando su una di questi titoli vado a finire in una pagina dove si trova una form che mi fa riscrivere l'articolo...io poi lo invio ad un file ke dovrebbe fare l'update sulla mia tabella ma mi dice in continuazione che l'articolo non ha avuto successo,questo perchè gli ho messo questo controllo...vi riporto il file:
<?
include ("config.inc.php");
$id=$_GET[id];
$titolo=$_GET[titolo];
$testo=$_GET[testo];
$query = "UPDATE news SET titolo = $titolo, testo = $testo, WHERE id =$id";

if (mysql_query($query, $db))
echo "L'articolo è stato modificato correttamente";
else
echo "Errore durante la modifica dell'articolo";
//chiudo la connessione con mysql
mysql_close($db) or die ("Non riesco a chiudere la connessione con MySQL");
?>
<a href="modify.php">Ritorna alla pagina di modifica</a>

Vi prego perchè non so più come fare
Ringrazio tutti in anticipo:dipser:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
prova a modificare nel seguente modo la query


$query = "UPDATE news SET titolo = '".$titolo."', testo = '".$testo."', WHERE id ='".$id."'";

cioè racchiudere tra apici = ' ".$variabile." '
 

MaNDraKe32

Nuovo Utente
31 Mag 2008
14
0
0
Sei stato gentilissimo ma sinceramente non è successo nulla di chè...o meglio ti riporto il problema:

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 'WHERE id ='£id'' at line 1

ho aggiunto questo nel codice echo mysql_error(); ma ti dirò che dubito di me stesso...

Forse l'errore sta tutto nel passaggio dei dati,può essere?
<?
include("config.inc.php");
$id=$_GET['id'];
$query = "SELECT id,titolo,testo FROM news WHERE id=$_GET[id]";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
?> </p>
<form method="get" action="save2.php">
<p>&nbsp;&nbsp;<strong>Inserisci il titolo della News :</strong></p>
<p>
<input name="titolo" type="text" id="titolo" width="600" value="<?php echo $row['titolo']; ?>" />
</p>
<p>

</p>
<p>&nbsp;&nbsp;<strong>Inserisci il testo della News :</strong></p>
<p>
<textarea name="testo" cols="97" rows="10"><? echo $row['testo']; ?></textarea>
</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>
<label></label>
&nbsp;
<label></label>
<input name="Modifica_News" type="submit" id="Modifica News" value="Modifica News" />
<br />
&nbsp;</p>
</form>
<?
mysql_close($db);
?>

Spero mi riesca a dare una mano perchè sono nei guai...cordiali saluti
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
sembra che l'errore derivi da get[id]

prova ad inserire

include("config.inc.php");
$id=$_GET['id'];

echo"<br> il valore di id=".$id."<br>";


$query = "SELECT id

e guarda cisa contiene id

e racchiudi sempre tra apici '



"SELECT id,titolo,testo FROM news WHERE id= ' ".$_GET[id]." ' ";
 

MaNDraKe32

Nuovo Utente
31 Mag 2008
14
0
0
Ciao senti quel $_GET proviene da una pagina che almeno in teoria prende tutti i titoli e le date e le visualizza a schermo permettendo la visualizzazione sulla pagina seguente...ti riporto il codice
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Ecosportello..::Modificare le news</title>
<style type="text/css">
<!--
.style1 {
color: #000000;
font-weight: bold;
}
.style2 {color: #000000}
-->
</style>
</head>

<body>
<table width="794" height="699" border="1" align="center" bordercolor="#aca899" bgcolor="#c1e7e8">
<tr>
<td height="693" valign="top"><table width="794" height="150" border="0">
<tr>
<td valign="top"><img src="../img/logoCorretto.jpg" width="788" height="150" /></td>
</tr>
</table>
<table width="794" border="1" bordercolor="#aca899">
<tr>
<td>&nbsp;&nbsp;<a href="Ecosportello.php" class="style1">Home</a> : <a href="pannello.php" class="style1">Pannello di controllo</a> : <a href="News.php" class="style1">News</a> : <strong>Modificare le News</strong> </td>
</tr>
</table>
<table width="794" border="0">
<tr>
<td height="500" valign="top"><p>&nbsp;</p>

<p>
<?
include("config.inc.php");
if (!isset($start) OR $start<0)
$start=0;
$step = 20;
$query = "SELECT id,data,titolo FROM news ORDER BY data DESC LIMIT $start,$step";
$result = mysql_query($query, $db);
while ($row = mysql_fetch_array($result))
{
echo "<a href=\"edit_ok.php?id=$row[id]\">" . date("j/n/y", $row[data]) . " - $row[titolo]</a><br>"; ?>
</p>
<p>
<?
}
?>
<br>
</p>
<table width=90% border=0><tr>
<td width=20% align=left>
<?
if ($start>0)
{ $start_back = $start - $step;
echo "<a href=modify.php?start=$start_back>precedenti</a>";
}
?> </td>
<?
$query = "SELECT count(*) AS tot FROM news";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
$pages = intval(($row[tot]-1) / $step)+1;
?>
<td width=60% align=center><p><?
for ($i=0; $i<$pages AND $i<20; $i++)
{ $start_page = $i * $step;
echo "<a href=modify.php?start=$start_page>" . ($i+1) . "</a> ";
}
?>
</p>
</td>
<td width=20%>
<?
if ($start + $step < $row[tot])
{ $start_next = $start + $step;
echo "<a href=modify.php?start=$start_next>successivi</a>";

}

//chiudo la connessione con mysql
mysql_close($db) or die ("Non riesco a chiudere la connessione con MySQL");
?></td>
</tr></table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>

Ora non so dirti se va bene ma da qui prende il tutto...
Ho provato tutti altri aiuti ma non funzionano...forse l'errore sarà in questa pagina sopra elencata...
Aiutatemi vi prego
 

jan267

Utente Attivo
6 Mar 2003
1.950
2
38
35
Milano
twitter.com
E' cannata la query, così dovrebbe funzionare:
PHP:
$query = "UPDATE news SET titolo = '" . $titolo . "', testo = '" . $testo . "' WHERE id = '" . $id . "';";
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
la riga che trasmette sembrerebbe ok

PHP:
echo "<a href=\"edit_ok.php?id=$row[id]\">" . date("j/n/y", $row[data]) . " - $row[titolo]</a><br>";

ti posso consigliare di mettere degli echo che poi commenterai e eliminerai

per segure passo passo la variabile
potresti ed es. schivere

echo "<pinco pallo=\"edit_ok.php?id=$row[id]\">" . date("j/n/y", $row[data]) . " - $row[titolo]</a><br>";

in modo che ti stampi quello che stai trasmettendo effettivamente
 

MaNDraKe32

Nuovo Utente
31 Mag 2008
14
0
0
Ringrazio tutti per il grande aiuto adesso tutto va come dovrebbe andare...c'è solo un problema che a questo punto non capisco...Perchè se il messaggio mi dice che è andato tutto bene la news cambiata non si cambia in realtà?
Credetemi va veramente bene, ma la news non si cambia come si può fare?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
guarda direttamente con msqladmin nella tabella e verifica se è cambiata,
una volta sono impazzito ma dovevo solo dare l'aggiorna alla pagina
 

MaNDraKe32

Nuovo Utente
31 Mag 2008
14
0
0
Allora ho provato a mettere or die(mysql_error()); in due posti:

il primo vicino alla chiusura del database:
<?php
include ("config.inc.php");
$id=$_GET[id];
$titolo=$_GET[titolo];
$testo=$_GET[testo];
$query = "UPDATE news SET titolo = '" . $titolo . "', testo = '" . $testo . "' WHERE id = '" . $id . "';";

if (mysql_query($query, $db))
echo "L'articolo è stato modificato correttamente";
else
echo "Errore durante la modifica dell'articolo";
echo mysql_error();
//chiudo la connessione con mysql
mysql_close($db) or die(mysql_error());
?>
<a href="modify.php">Ritorna alla pagina di modifica</a>

ma qui non succede niente tutto ok...mentre mettendolo vicino all' if:

if (mysql_query($query, $db)) or die(mysql_error());

mi da questo errore:
Parse error: syntax error, unexpected T_LOGICAL_OR in C:\Programmi\Apache Software Foundation\Apache2.2\htdocs\ecosportello\privacy\save2.php on line 8

ora non so se devo fare qualcos'altro
 

MaNDraKe32

Nuovo Utente
31 Mag 2008
14
0
0
Ho provato ad aggiornare il tutto anche da phpmyadmin maniente sembre la stessa cosa...sto provando anche io ma niente non esce il problema...vi prego fatemi sapere appena potete...:dipser:
 

jan267

Utente Attivo
6 Mar 2003
1.950
2
38
35
Milano
twitter.com
PHP:
$mysql_query = mysql_query($query, $db) or die(mysql_error());
if ($mysql_query)
echo "L'articolo è stato modificato correttamente";
ecc.....
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
togli quel ; non centra niente

$query = "UPDATE news SET titolo = '" . $titolo . "', testo = '" . $testo . "' WHERE id = '" . $id . "';";

ciao e buonanotte:dormo:
 
Discussioni simili
Autore Titolo Forum Risposte Data
F access ricerca record con apostrofo. MS Access 0
F Cerco Hosting con VECCHIE versioni di php Hosting 0
C Come ricreare questo calcolatore di prezzi a step con woocommerce? WordPress 0
C Segnalo barra laterale di navigazione ASSENTE con Chrome Comunicazioni dallo Staff 5
G Guadagna dalla Vendita di Articoli Sponsorizzati con GuestPostMax.com! Guadagnare col Sito 0
P Hosting multidominio con Plesk Hosting 0
L Soluzione con INNER JOIN Database 0
S passare un valore da un form a un file .php con metodo post PHP 4
A Redirect 301 genera url statico con variabili Web Server 0
T problemi con dati menu a tendina HTML e CSS 2
T Query con date MS Access 1
F Url dinamiche da cambiare con categoria, subcategoria e title PHP 2
L Aiuto con DataGridView Visual Basic 1
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
G Problema con Xampp Web Server 1
M Aggiunta prodotti nel carrello con lo stesso in e varianti diverse PHP 0
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
B Non riesco a trovare i cognomi con i caratteri speciali in Access (Microsoft 365) MS Access 0
N Problema con position absolute e overflow HTML e CSS 4
M Estrarre soltanto i prodotti con stessa descrizione PHP 10
felino [Wordpress] Gallery con foto selezionabili dall'utente WordPress 0
G Invio di più valori con la stessa checkbox PHP 4
csi Inviare file jpg in locale alla stampante con php PHP 0
otto9due Proteggere una cartella e file con password tramite .htaccess e .htpasswd Web Server 0
I Form con selettore HTML e CSS 0
G phpmailer e php 8.1 con estensione mysqli PHP 6
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
N Vendo sito web di casino online con 1000 giochi Compravendita siti e domini 0
G form invio multiplo con checkbox PHP 12
L Query e selezione DB con $_POST PHP 2
K [PHP] Problema con variabili concatenate. PHP 1
R Dubbi su siti sviluppati con Wordpress e con codice WordPress 6
B Router e telecamere con pannello solare IP Cam e Videosorveglianza 0
Z Cerco ecommerce gratuito meglio se realizzato con Woocommerce di Wordpress. E-Commerce 0
S [CERCO] scambio di articoli con link Offerte e Richieste di scambio links 0
A Immagine decentrata con sfondo trasparente Photoshop 0
O problema con query PHP 4
Jensen Errore di sintassi con DELETE PHP 3
D Casella di testo con grassetto ecc... HTML e CSS 2
R Aprire maschera con Openform filtrando un campo testuale con un valore recuperato da un'altra maschera MS Access 10
G Query con i giorni della settimana MySQL 10
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
G Il mio sito dopo aver abilitato l'ssl non visualizza le immagini con indirizzi senza ssl HTML e CSS 0
A Connessione a mdb con php7 PHP 1
P errore 404 con javascript Javascript 2
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
M Unire 2 funzioni per l'invio di un form e con l'apertura di un div Javascript 0

Discussioni simili