• User

    nome tabella mysql con "."

    Domandina veloce veloce...perchè il mio mysql non accetta il nome del miindirizzo ip? (127.0.0.1) ho provato anche a crearne una con un numero diverso...ma sembra non accetti il "."


  • Moderatore

    Perché è un carattere riservato. Tutto qui. 🙂


  • User

    ciao massy...grazie per la delucidazione!!! 🙂

    Voglio domandare ancora una cosa:

    come posso impostare una query di modo che gli dico:

    "prendi tutti i campi (o alcuni) della tabella fino a che la tabella non è piena"

    dovrebbe essere:

    SELECT * FROM tabella WHERE....

    (mi spiego meglio: ho un modulo d'ordine e alla fine devo richiamare tutti i prodotti che l'utente ha compreato e impaginarli "decentemente" per la loro visualizzazione ed eventuale modifica) avevo provato ad assegnargli un Id...ma mi risulta un pò ...complicato...perchè se un utente mi cancella un articolo dall'ordine mi rimane il "Buco" dove l'id corrisponde a quella posizione....ritornandomi il valore zero nella visualizzazione...


  • Moderatore

    Che significa tabella piena?

    ho un modulo d'ordine e alla fine devo richiamare tutti i prodotti che l'utente ha compreato e impaginarli "decentemente" per la loro visualizzazione ed eventuale modifica

    Crei una tabella per gli ordini ed una per i prodotti.

    Immaginando che hai
    ordini
    id_ordine
    ..altre opzioni

    prodotti
    id_prodotto
    prezzo
    ...bla bla

    crei una terza tabella temporanea con
    id_ordine id_prodotto
    ogni volta che il cliente compra un prodotto inserisci un record tipo:
    1 4
    1 6
    1 8
    1 1

    se ne cancella uno, cancelli quel record.
    Quando finito cerchi tutti i campi con id_ordine desiderato e ci fai quello che ti pare 🙂


  • User

    ...ho impostato più o meno la cosa come hai descritto tu...:

    ho una tabella contenente i prodotti....
    e una tabella per gli ordini con un id in chiave primaria che viene creata appena l'utente accede alla pagina prodotti con un numero univoco, assegnato all'indirizzo ip (essendo anche per utenti anonimi non ho trovato soluzioni più "geniali"...:) ).
    ho pensato che in questo modo se un altro utente nello stesso momento procede ad effettuare un ordine, gli viene assegnato un altro nome di tabella e così via...

    ora il mio probelma è il seguente e se puoi darmi una mano a correggere i miei errori:

    voglio scrivere una cosa del genere:

    **controlla nella tabella temp_user **(che contiene il nometabella, indirizzo ip e data di ogni utente - [per la ricerca del nometabella in tutte le operazioni])**che l'utente con indirizzo ip **(indirizzo ip dell'utente) è esistente, se si, prosegui oltre, se no crea la tabella temporanea con numero univoco e scrivi nella tabella temp_user l'indirizzo ip dell'utente, il numerounivoco e la data...

    io ho scritto così:

    
    $dt=date("YmdH");
    		$dtold = date("H")-1;
    		$ip = $_SERVER['REMOTE_ADDR'];
    
    $mysql_contr = 'SELECT date FROM temp_user WHERE ip_user=$ip';
    		$risultato=mysql_query($mysql_contr);
    		
    		while ($row = mysql_fetch_array($risultato)) { 
    				if(!strlen($row[date]) == 0)
    					{
       			 		$data_tab = $row['date'];
    				
    							if &#40;$data_tab < $dtold&#41;&#123;
    							$mysql_delete ='DELETE FROM temp_user WHERE ip_user=$ip';	
    							mysql_query&#40;$mysql_delete&#41;;
    							&#125;
    					&#125;
    				
    		&#125;
    		
    						
    		$nUnico = md5&#40;uniqid&#40;rand&#40;&#41;,1&#41;."g4h3w2x"&#41;;// genera un numero univoco
    		$table_temp = $nUnico;
    	
    		$strSQL = "CREATE TABLE `$table_temp`&#40;
    		 `id` tinyint&#40;11&#41; unsigned NOT NULL auto_increment,
    		 `code` varchar&#40;30&#41; NOT NULL default '',
    		 `desc` varchar&#40;100&#41; NOT NULL default '',
    		 `prez_uni` text,
    		 `quant` tinyint&#40;4&#41; NOT NULL default '0',
    		  `prez_tot` text NOT NULL,
    		  PRIMARY KEY  &#40;`id`&#41;
    		&#41; TYPE=MyISAM AUTO_INCREMENT=1"; 
    		
    		mysql_query&#40;$strSQL&#41;;
    		
    		$mySQL_user = "INSERT INTO temp_user VALUES&#40;'$nUnico', '$ip', '$dt'&#41;";
    		mysql_query&#40;$mySQL_user&#41;;
    
    
    

    ma non mi funziona....grazie per la pazienza