Come da titolo è possibile fare che in 1 pagina vengano stampate le cose inserite nel db dal proprio nik?(utente gia loggato quindi nik conservato con varia roba),è anche possibile modificarle?
se è possibile qualcuno mi puo aiutare?pls
Come da titolo è possibile fare che in 1 pagina vengano stampate le cose inserite nel db dal proprio nik?(utente gia loggato quindi nik conservato con varia roba),è anche possibile modificarle?
se è possibile qualcuno mi puo aiutare?pls
Non vedo la difficoltà.
Una volta che l'utente è loggato hai a disposizione il suo username e password, interroghi il db con questi dati (WHERE username='$username' AND psw='$psw' LIMIT 1) e stampi i dati copo aver fetchato il risultato della query con un mysql_fetch_assoc.
Per modificarli, basta inserire gli stessi dati in un form (quindi i valori pescati dal db andranno a popolare i vari textbox o textarea) e al momento del submit dello stesso form fai una query UPDATE.
Ciaoo!!
grazie debug ma mi sono spiegato male
l'utente logga al login pero i dati sono presenti in un altra tabella(mercato) mentre quella del login è sl _user,allora dovrei prima effettuare 1 conessione alla tabella mercato?
No, più semplicemente estrai i dati da quella tabella anzichè da user.
Per facilitarti la vita fai 2 query: la prima per estrarre l'id dalla tabella user (come ti ho suggerito prima), la seconda iterroghi mercato con l'id (ovviamente univoco) estratto (che ovviamente corrisponde a quell'utente e solo a quello).
Ciaoo!!!
il problema è che siccome linserimento di +oggetti dava problemi con l'id = delle 2 tabelle ,esse hanno 2 id diversi in questo caso controllo l'username?
Fai prima a postare la struttura delle due tabelle.
La coordinazione dei dati in più tabelle si basa su un ID univoco (di solito un campo INT con auto_increment) che fa riferimento ad un record preciso di una tabella.
Ciaoo!!
la struttura delle due tabelle è cosi:
Utenti
id int unsigned not nul auto increment primary key
username varchar 32 null
password varchar 32 null
Mercato
id uset int 11 null
id int unsigned not null auto icrement primary key
poi da testo 1 a testo 9 sono text null
Edit per provare o fatto cosi;
Mi stampa solo il 1 inserimento dello stesso utente mentre io vorrei stampasse tutti i suoi inserimenti in vari form seguiti da tasto aggiorna(perchè l'utente puo inserire anche 20 volte 1 oggetto) e poi quando cerco di modificare mi da errore sql modificaCodice PHP:
<link href="css.css" rel="stylesheet" type="text/css">
<?
session_start();
if ($_SESSION['login'] != "yes")
{
print"<head>
<meta http-equiv=\"Content-Language\" content=\"it\">
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<title></title>
</head>
<body text=\"#FFFFFF\" bgcolor=\"#737373\">
<p><b><font face=\"Sylfaen\" size=\"2\" color=\"#FFFFFF\">Attenzione! Username o
Password non Validi!
<a href=\"http://muitaly.altervista.org/Login/login5.php\">
<span style=\"text-decoration: none\"><font color=\"#FFFFFF\">Torna Indietro</font></span></a></font></b></p>
</body>
</html>";
exit;
}
else
{
/*******************************************************************/
/* Qui andrà il contenuto della pagina protetta */
/*******************************************************************/
// Connessione al database
require ('inc/config.php');
$db = mysql_connect($db_host, $db_user, $db_pass);
if ($db == FALSE)
die ("<img src=\"images/button_cancel.png\"> <span class=\"Stile7\">Errore nella connessione. Verificare i parametri del database nel file inc/config.php</span>");
mysql_select_db($db_name, $db)
or die ("<img src=\"images/button_cancel.png\"> <span class=\"Stile7\">Errore nella selezione del database. Verificare i parametri nel file inc/config.php</span>");
// Query riconoscimento utente
$query = "SELECT * FROM Mercato WHERE username = '".$_row['username']."'AND id_user = '".$_row['id']."'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$id_ = $row[0];
$testo1 = $row[3];
$testo2 = $row[4];
$testo3 = $row[5];
$testo4 = $row[6];
$testo5 = $row[7];
$testo6 = $row[8];
$testo7 = $row[9];
$testo8 = $row[9];
$testo9 = $row[10];
echo "<form action=\"edit.php\" method=\"POST\">
<input type=\"hidden\" name=\"go\" value=\"1\">
<input type=\"hidden\" name=\"id_\" value=\"".$id_user."\">
<input type=\"text\" name=\"testo1\" value=\"".$testo1."\">
<input type=\"text\" name=\"testo2\" value=\"".$testo2."\">
<input type=\"text\" name=\"testo3\" value=\"".$testo3."\">
<input type=\"text\" name=\"testo4\" value=\"".$testo4."\">
<input type=\"text\" name=\"testo5\" value=\"".$testo5."\">
<input type=\"text\" name=\"testo6\" value=\"".$testo6."\">
<input type=\"text\" name=\"testo7\" value=\"".$testo7."\">
<input type=\"text\" name=\"testo8\" value=\"".$testo8."\">
<input type=\"text\" name=\"testo9\" value=\"".$testo9."\">
<input type=\"submit\" value=\"Aggiorna!\">
</form>
ahahahha
";
exit;
}
?>
Ultima modifica di ang : 07-09-2006 alle ore 08.30.52
Aspetta, ma cosa sono in Mercato questi campi:
id uset int 11 null
id int unsigned
Uno, in teoria, dovrebbe identificare i record nella tabella (l'auto_increment cioè la chiave primaria), e l'altro dovrebbe rappresentare l'ID degli utenti che inseriscono i prodotti in questa tabella. Giusto?
Questa queryandrebbe bene se tu prima di essa avessi fatto un'altra query per estrarre quelle variabili (a parte che devi togliere quei _ dal nome dell'array row[]). Ma poi, sempre in questa query, tenti di verificare un campo che non esiste, cioè username!Codice PHP:
$query = "SELECT * FROM Mercato WHERE username = '".$_row['username']."'AND id_user = '".$_row['id']."'";
Ciaoo!!!
scusa 1 è autoincrement ed identifica i prodotti partendo da 0 1 ecc...
l'altro id user da sempre 0 come id e non so il perchè
per il resto non ho capito devo levare il _ e fare $row e devo far stampare i dati prima ? cmq io tendo di far verifichare username perchè id è diverso tra la tabella del login e Mercato ,questo perche non so come farlo inviare l'id dell'utente quando inserisce un prodotto.Mi aiuteresti a risolvere questo problema?
Ultima modifica di ang : 07-09-2006 alle ore 10.57.02
Oddio, aspetta un secondo.
Prima di tutto, quando tu inserisci i record nella tabella mercato, devi memorizzare anche l'ID dell'utente che sta facendo questa operazione, ok?
Bene, poi riguardo all'array $_row dicevo che dovevi togliergli il carattere '_' altrimenti ti potresti confondere con una variabile superglobale (tipo $_POST, $_COOKIE, ecc.), infatti credo che tu ti sia già confuso perchè usi ad esempio $_row['username'] ma senza aver prima valorizzato questo elemento.
Per farti capire cosa intendo, prova a stampare il contenuto dell'array $_row con print_r($_row);
Ciaooo!!!
allora forse o capito debug
per prima cosa devo far mandare l'id utente quando inserisco i dati nel db con la query (uso quindi un hyde con $row[id])
primo punto
mi mette solo1 numero di id utente come mai? ad es: 899999999
mette solo 8...
poi la 2 cosa non riesco a capire devo togliere gli apici o prorpio ['username'], se si come posso richiamarla?Codice PHP:
<?php
session_start;
$user = "";
$pwd = ""; // qui la tua password
$host = "localhost";
$dbase = "";
$db = mysql_connect ($host, $user, $pwd) or die
("Impossibile connettersi al database!");
mysql_select_db ($dbase);
$username = $_POST['username'];
$id = $_POST['id'];
$testo1 = $_POST['testo1'];
$testo2 = $_POST['testo2'];
$testo3 = $_POST['testo3'];
$testo4 = $_POST['testo4'];
$testo5 = $_POST['testo5'];
$testo6 = $_POST['testo6'];
$testo7 = $_POST['testo7'];
$testo8 = $_POST['testo8'];
$testo9 = $_POST['testo9'];
if ($_POST['submit'] == 'Invia') {
$inserimento= mysql_query ("INSERT INTO Mercato (username,id_user,testo1, testo2, testo3, testo4, testo5, testo6, testo7, testo8, testo9,data_ora) VALUES ('".$username."','".$id."','".$testo1."', '".$testo2."', '".$testo3."','".$testo4."','".$testo5."','".$testo6."','".$testo7."','".$testo8."','".$testo9."',now())") or die(mysql_error());
echo ("Inserimento avvenuto correttamente!"); }
header('Location: Panel.php');
?>
cmq ho fatto 1 po di confusione il campo username ce anche in mercato
Ultima modifica di ang : 07-09-2006 alle ore 14.47.17