Jump to content

salvo89

Members
  • Content Count

    35
  • Joined

  • Last visited

  1. Salve, per un mio sito ho utilizzato una classe php che mi offre la possibilità di creare categorie e sottocategorie infinite. Quando salvo una categoria padre e poi una sottocategoria appartenente a questa categoria padre, sul database mysql lo script mi salva un percorso dato dai due id ovvero quello della categoria padre e quello della sottocategoria appartenente. Il percorso che salva è questo 1 > 10 dove 1 è la catagoria principale e 10 la sottocategoria appartenete. Ora io voglio trasformare questo percorso nel tipo: Occhiali > Lenti a contatto, quindi inserendo i rispettivi nomi al posto dei numeri ID, tutto questo per crearmi una sorta di breadcrumb. Come posso fare? sto impazzendo, aiutooo!
  2. salvo89

    Tabella ed inserimento dati PHP

    no ma è una cosa mia personale!
  3. salvo89

    Tabella ed inserimento dati PHP

    Vediamo se ho capito: rinomino i name degli input text così <input type="text" name="articolo[$taglia][$colore]" value="" /> Che poi tramite $_POST di articolo[$taglia][$colore] mi inserisco nel db mysql Giusto? Ma così facendo nel DB non si inserirà solo il valore che io inserirò nel value del campo di testo, ovvero la quantità abbinata a taglia/colore (es.1, 2, 10)? Io invece voglio che nel DB mysql mi venga inserito il quantitativo che inserisco nel value abbianto alla taglia/colore tipo "10-S-Giallo". Perchè il Db non è normalizzato? come lo dovrei fare dunque?
  4. salvo89

    Tabella ed inserimento dati PHP

    Vediamo se ho capito! Ci provo!
  5. salvo89

    Tabella ed inserimento dati PHP

    No io la tabella l'ho creata però non capisco come posso fare l'inserimento in mysq. Io utilizzo delle input text dove inserisco un numero equivalente a taglia/colore. La tabella mysql l'ho fatta così ID | tagliacolore | numero in tagliacolore ci andrà l'abbinamento taglia e colore, mentre in numero, il numero di taglia/colore inserito nella input text. Ovviamente si potranno inserire più numeri di taglie abbiante al colore quindi il name della input deve essere del tipo nome[]? Tnks
  6. salvo89

    Tabella ed inserimento dati PHP

    example? :-)
  7. salvo89

    Tabella ed inserimento dati PHP

    Salve, sono di nuovo qui per chiedervi una cosa. Vorrei realizzare questa tabella: Come vedete, io ho due tabelle nel db mysql. Una tabella per le taglie (SELECT * FROM taglie ecc..) ed una tabella per i colori (SELECT * FROM colori ecc..) . Io vorrei che dall'unione di taglie e colori mi apparisse una tabella come quella di sopra dove l'utente può inserire la quantità di magliette che vuole per quella taglia e quel colore (come da immagine). Ora il problema è che poi in db mi devono essere inserite le corrispondenze di quantità per taglia/colore scelto. Quindi se il cliente ha scelto 5 pezzi S colore arancio sul DB mi deve spuntare "5 - S - ARANCIO". Come faccio? Mi aiutate?
  8. salvo89

    Select distinct e Inner Join

    Salve, devo estrarre delle sottocategorie da una tabella che si chiama prodotti, dove ovviamente queste sottocategorie corrispondono ad un id che poi tramite inner join mi richiamo facendomi stampare, al posto del numero, il titolo esatto della sottocategoria corrispondente all'id stesso. Ora fin qui tutto perfetto se non che i risultati estratti si ripetono doppioni. Per ovviare a ciò ho usato la SELECT DISTINCT che funziona però non funge con l'inner join. Infatti questa non mi stampa più nessun titolo della sottocategoria. Vi posto la query: $connessione = "SELECT DISTINCT prodotti.sottocategoria FROM prodotti INNER JOIN sottocategorie ON prodotti.sottocategoria = sottocategorie.id_sottocategoria WHERE categoria =". $_GET['id_categoria']; $risultato = mysql_query($connessione) or die('Errore nella query SQL'); while ($datia = mysql_fetch_array($risultato)) { Dove sbaglio? Grazie
  9. salvo89

    Newsletter da inviare a gruppi di 50 indirizzi

    Ciao Uno e grazie, e quindi come dovrei fare?? Mi potresti gentilemnte far vedere un esempio?
  10. Salve, mi trovo nella condizione di inviare una newsletter a circa 6.000 indirizzi e-mail utilizzando la funzione del php mail. Ora essendo php mail limitato all'invio di un certo numero di indirizzi e non certo per così tanti, ho cercato di effettuare l'invio a gruppi di 50 indirizzi e-mail per volta. Ma questo script sembra non funzionare in quanto invia solamente 50 e-mail a 50 indirizzi e non a gruppi di 50 fino al raggiungimento dei 6.00 utenti. Vi posto il codice, mi date una mano?? <?php // Per iniviare la newsletter $testomail = $_POST['text']; $oggetto = $_POST['subject']; $testomail = str_replace("'", "´", $testomail); $oggetto = str_replace("'", "´", $oggetto); $totale=1; // Inserisce in BCC tutti gli indirizzi mail raggruppati per 50 $c=floor($totale/50); // restituisce il numero per difetto! $count=0; for($i=0;$i<=$c;$i++) { $z=0; $s=$i*50; $query = "SELECT * FROM prova WHERE abilitato = 0 LIMIT ".$s.",50"; $action = mysql_query($query); if (mysql_num_rows($action) > 0) { while ($row = mysql_fetch_array($action)) { $count++; $z++; if ($z == 1) $bcc = $row['email']; else $bcc .= ", " . $row['email']; } } // Intestazioni mail $header = "Reply-To: info@prova.it\n"; $header .= "From: Prova Prova <info@prova.it>\nBCC: ".$bcc.""; $header .= "XMailer: Suada.it Mailer System\n"; $header .= "MIME-Version: 1.0\n"; $header .= "Content-Type: text/html; charset=utf-8"; // Invio Mail mail("noreply@prova.it", "$oggetto", "$testomail", "$header"); echo ('<script language="JavaScript" type="text/javascript">alert("La mail e\' stata inviata con successo a tutti gli indirizzi abilitati alla ricezione della newsletter!"); window.location="newsletter.php"</script>"'); } } ?> Grazie mille
  11. salvo89

    [Aiuto!!] Upload multiplo dei file con PHP

    Risolto, grazie pingoso! :)
  12. Cia ragazzi, ho realizzato uno script in php che mi permette di selezionare un archivio ZIP contentente immagini e foto tramite lo sfoglia, di uploadarlo e scompattarlo in una cartella FTP il cui nome viene impostato direttamente dall'utente tramite il campo "Titolo". Cliccando su "Vai allo step successivo", il sistema ti fa l'elenco di tutte le fotografie caricate con tanto di nome ed anteprima. Se il tutto è corretto, basterà cliccare sul bottone "termina il caricamento" ed i nomi delle foto verranno anche scritte sul DB mysql. Ora lo script funziona perfettamente e non mi genera nessun errore di sistema od altro. Il problema è che nel database mi salva solamente il nome dell'ultima fotografia presente in lista tralasciando tutte le altre. Sto impazzendo perchè non riesco a capire qual è l'errore. Vi prego di darmi, se potete, una mano perchè sono disperato! Vi posto di seguito il codice PHP completo. <?php session_start(); if(isset($_SESSION['accesso'])) { $nomepagina = "Area di amministrazione"; include("../includes/connessione.php"); include("includes/header.php"); ?> <body> <div id="grande"> <?php include("includes/intestazione.php"); ?> <div id="principale"> <!--INIZIO TABELLA--> <br /><h2>Gestione delle gallerie fotografiche</h2><br /><br /> <table width="800" border="0" cellspacing="3" cellpadding="5" align="center"> <tr> <td style="background:#CCC; padding:15px;"> <center> <input type="button" value="Torna nell'area riservata" name="torna" onClick="window.location.href='area_riservata.php';" /> <input type="button" value="Torna all'elenco delle foto" name="torna2" onClick="window.location.href='gestione_foto.php';" /> </center> </td> </tr> </table> <br /><br /> <?php $connessione=mysql_connect($dbhost,$dbusername,$dbpassword); mysql_select_db($dbnome,$connessione); if(isset($_POST['invia'])) { // Definisco le variabili e faccio un replace per caratteri speciali $uploaddir = "includes/upload/fotografie/"; $uploadfile = $uploaddir . $_FILES['nome']['name']; $nomez=$_FILES['nome']['name']; $nomez=str_replace(".zip","",$nomez); $categoria = $_POST['categoria']; $titolo = $_POST['titolo']; $titolo = str_replace("'", "´", $titolo); // Valido i campi if(empty($titolo) || empty($categoria)) { echo("<script>alert('Alcuni campi obbligatori non sono stati compilati');</script>"); } else{ // Controllo che non ci siano stati errori nell'upload (codice = 0) if (move_uploaded_file($_FILES['nome']['tmp_name'], $uploadfile)) { // Se tutto è andato bene carico i risultati nel database $conn = "INSERT INTO album SET titolo = '$titolo', categoria = '$categoria'"; mysql_query($conn) OR die('Query non valida: ' . mysql_error()); $id_album=mysql_insert_id(); echo ('<script language="JavaScript" type="text/javascript">alert("Primo passaggio completato con successo!"); window.location="inserisci_foto.php?ricalcolo=nuovo&id_album='. $id_album .'&categoria='. $categoria .'&titolo='. $titolo .'"</script>"'); } else { echo ("<script language='JavaScript' type='text/javascript'>alert('Errore nel caricamento delle fotografie. Controlla che non ci siano problemi nel file ZIP.');</script>"); } include('librerie/pclzip.lib.php'); $archive = new PclZip("$uploadfile"); if ($archive->extract(PCLZIP_OPT_PATH, "includes/upload/fotografie/$titolo",PCLZIP_OPT_REMOVE_PATH, '') == 1) { //die("Error : ".$archive->errorInfo(true)); echo ("<script language='JavaScript' type='text/javascript'>alert('Errore nella decompressione. Contattare Sito Smile');</script>"); } } } ?> <center>Inserisci una nuova galleria fotografica:</center><br /><br /> <?php if (!$_GET['ricalcolo']=="nuovo"){ ?> <form action="" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000"/> <table width="800" border="0" cellspacing="3" cellpadding="5" align="center" style="border:1px solid #666"> <tr> <td style="border:1px solid #666;"><b>Categoria delle foto:</b></td> <td style="border:1px solid #666;"> <select name="categoria" style="width:286px;"> <option value="0">[selezione una categoria]</option> <?php $conn = "SELECT * FROM categorie order by titolo"; $risultato = mysql_query($conn) or die('Errore nella query SQL'); while(list($id_categoria, $titolo) = mysql_fetch_array($risultato)) { ?> <option value="<?php echo $id_categoria ?>" <?php echo $selezione ?>><?php echo $titolo ?></option> <?php } ?> </select> </td> </tr> <tr> <td style="background:#CCC; border:1px solid #666;"><b>File ZIP contenente le foto:</b></td> <td style="background:#CCC; border:1px solid #666;"><input type="file" name="nome" size="30"></td> </tr> <tr> <td style="background:#CCC; border:1px solid #666;"><b>Titolo cartella: (scrivere tutto attaccato)</b></td> <td style="background:#CCC; border:1px solid #666;"><input type="text" name="titolo" size="30" value="<?php echo $titolo ?>"></td> </tr> <tr> <td colspan="2" align="center" style="border:1px solid #666;"><input type="submit" name="invia" value="Vai allo step successivo"> <input type="reset" name="resetta" value="Resetta i dati"></td> </tr> </table> </form> <br /><br /> <?php } if($_GET['ricalcolo']=="nuovo"){ $conn = "SELECT * FROM album WHERE id_album=" .$_GET['id_album']; $risultato = mysql_query($conn) or die('Errore nella query SQL'); while(list($id_album, $categoria, $titolo) = mysql_fetch_array($risultato)) { function dir_list($directory = FALSE) { $dirs= array(); $files = array(); if ($handle = opendir("./" . $directory)) { while ($file = readdir($handle)) { if (is_dir("./{$directory}/{$file}")) { if ($file != "." & $file != "..") $dirs[] = $file; } else { if ($file != "." & $file != "..") $files[] = $file; } } } closedir($handle); reset($dirs); sort($dirs); reset($dirs); reset($files); sort($files); reset($files); if($dirs == 1) { echo "<strong>Cartelle:</strong>\n<ul>"; while(list($key, $value) = each($dirs)) { $d++; echo "<li><a href=\"{$value}\">{$value}/</a>\n"; } echo "</ul>\n"; } echo "<form action='' method='post' enctype='multipart/form-data'> <strong>Immagini caricate nel server:</strong>\n<ul>"; while(list($key, $value) = each($files)) { $f++; echo "<td><img src='{$directory}/{$value}' height='60' width='60' style='border:1px solid #000;' align='absimiddle'></td><td> <input type='text' size='60' value='{$value}' name='file_' id='file' readonly style='border:0; height: 40px; background:none;'><br></td>"; } echo "</ul>\n"; if (!$d) $d = "0"; if (!$f) $f = "0"; /*echo "Sono presenti <strong>{$f}</strong> immagini per questa serata.</strong>\n";*/ echo"<br><table width='86%' align='center'><tr><td style='background:#CCC; border:0' align='center'><br><input type='submit' value='Concludi il caricamento foto' name='invia2'><br><br></td></tr></table> </form>"; } dir_list("includes/upload/fotografie/$titolo"); if(isset($_POST['invia2'])) { //Definizione variabili $file = $_POST['file']; $categoria = $_GET["categoria"]; $titolo = $_GET["titolo"]; $album = $_GET["id_album"]; // Se tutto è andato bene carico i risultati nel database $conn = "INSERT INTO fotografie SET nome = '$file', titolo = '$titolo', categoria = '$categoria', album = '$album'"; mysql_query($conn) OR die('Query non valida: ' . mysql_error()); $id = $_GET['id_foto']; echo ("<script language='JavaScript' type='text/javascript'>alert('Caricamento foto completato con successo!'); window.location='gestione_foto.php'</script>"); } } } ?> </div> <?php include("includes/footer.php"); ?> </div> </body> </html> <?php }else { ?> <script language="JavaScript" type="text/javascript"> alert("Accesso non consentito. Rieffettua il login") window.location = "index.php" </script> <?php } ?> Grazie dell'eventuale aiuto
  13. salvo89

    Aiuto con script upload immagini

    Salve ragazzi, come va? vi scrivo per un problema che mi sta facendo uscire pazzo. Sto creando uno script per la gestione news e l'inserimento delle immagini direttamente in database. Ora inserimento, eliminazione e gestione nessun problema. Il problema si verifica nella modifica delle news. Finchè modifico testo e ricarico una nuova immagine, il database si aggiorna e modifica con successo il tutto. Ma ora io voglio modificare solo il testo senza modificare l'immagine perchè voglio mantenere l'immagine che avevo caricato in fase di creazione della news. Ecco, se quindi qui non carico l'immagine, il database mysql si riaggiorna eliminandomi ovviamente l'immagine stessa. Per evitare che questo succeda io ho fatto un piccolo if che però non ha effetto. Vi posto il codice che tra l'altro non so nemmeno se è giusto oppure no. <?php // Eseguo l'azione solo se è stato dato l'input di invio. if(isset($_POST['modifica'])) { if(isset($_FILES['file_inviato'])) { // Recupero alcune informazioni sul file inviato $nome_file_temporaneo = $_FILES['file_inviato']['tmp_name']; $nome_file_vero = $_FILES['file_inviato']['name']; $tipo_file = $_FILES['file_inviato']['type']; $dati_file = file_get_contents($nome_file_temporaneo); $dati_file = addslashes($dati_file); //mi stampo una variabile che mi riporta le informazioni sulla query SQL $stampaquery = "nome_file = '$nome_file_vero', tipo_file = '$tipo_file', dati_file = '$dati_file',"; } else { //Altrimenti non carico nulla $stampaquery = ""; } // Definisco altre variabili e faccio un replace per i caratteri speciali $data = $_POST['data']; $titolo = $_POST['titolo']; $breve_descrizione = $_POST['breve_descrizione']; $descrizione = $_POST['descrizione']; $titolo = str_replace("'", "´", $titolo); $breve_descrizione = str_replace("'", "´;", $breve_descrizione); $descrizione = str_replace("'", "´;", $descrizione); // Valido i campi if(empty($data) || empty($titolo) || empty($breve_descrizione) || empty($descrizione)) { mostra_form("<script>alert('Alcuni campi obbligatori non sono stati compilati');</script>"); } else{ // Query per inserire il file nel DB $conn = "UPDATE notizie SET $stampaquery titolo = '$titolo', data = '$data', breve_descrizione = '$breve_descrizione', descrizione = '$descrizione' WHERE id_file =" .$_GET['id_file']; mysql_query($conn) OR die('Query non valida: ' . mysql_error()); echo ("<script language='JavaScript' type='text/javascript'>alert('Notizia modificata con successo'); window.location='gestione_notizie.php'</script>"); } } // Apro la query per stamparmi i dati delle news da visualizzare sugli input text e sulle textarea, nonchè l'immagine $conn = "SELECT * FROM notizie WHERE id_file=" .$_GET['id_file']; $risultato = mysql_query($conn) or die('Errore nella query SQL'); while(list($id_file, $nome_file, $tipo_file, $dati_file, $data, $titolo, $breve_descrizione, $descrizione) = mysql_fetch_array($risultato)) { ?> (SEGUE HTM) <?php } ?> Aiutatemi vi prego!!!. ciao e grazie
×