- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- Aiutone mini-script php/MySQL
-
Ciao rdo,
per prima cosa dovresti creare un file di testo chiamato webcam.txt .
Poi inserisci al suo interno nella prima riga i campi da utilizzare separati dal segno "|".
esempio:id|url img|testo h1| ecc....
Poi in ogni riga inserisci le informazioni delle webcam separandole con ils egno "|",nell'ordine definito nella prima riga.
es:
1|http://urlimg.com|webcam di testNella pagina che visualizza le suddette info metti questo codice php:
[php]
<?php
$db=file("webcam.txt");
array_shift($db);
foreach($db as $webcam){
$webcam=explode("|",$webcam);
// qui devi inserire i nomi dei campi e il numero progressivo di questi //partendo da 0$id=$webcam[0];
// eccetera...
if($_GET[id]==$id){
// istruzioni
// es: echo $urlimg stamperà a video il contenuto di $urlimg ,quindi "http://urlimg.com" dove l'id è //quello richiesto tramite GET.
}
}
?>[/php]
Poi richiama ogni webcam in questo modo:webcam.php?id=1
Ciao!
-
perfetto probid proprio quello che gli serve ... per iniziare. Infatti anziché un DB myssql usi un file excel che appunto é ottimo per iniziare e dato che rdo ha meno di 200 righe/webcam é gestibile cosí. Magari anziché fare il file txt, si tiene l´elenco in un file excel che é piú facile riguardo la gestion e poi "esporta" in CSV con estensione .txt usando il separatore da te suggerito (la barretta verticale).
io aggigungerei un ***exit *** nel If cosí da non continuare a scorrere tutte le righe dopo che la webcam con l´id desiderato viene trovata (cosa che succede con il codice cosí come adesso, se non sbaglio)Ci sono peró delle considerazioni SEO da fare, e in particolare che tu per vedere la webcam di Bormio desideri ancora aceddervi con /bormio.htm e non con /webcam.php?id=1
Risolvere questo problema é relativamente semplice se il tuo provider ti permette di fare url rewriting. E allora ti devi leggere anche qualcosa riguardo .htaccess, url rewrite, mod rewrite, url dinamici e posizionamento.La soluzione proposta é ottima per iniziare, poi non potrai fare a meno di un DB anziché del file di testo, sopratutto per la possibilitá di gestione della lista direttamente online. Ma allora la sostituzione del DB con il txt sará molto semplice e rapida senza dovere riscrivere tutto ma solo cambiando poche righe di codice.
-
@probid said:
Ciao rdo,
per prima cosa dovresti creare un file di testo chiamato webcam.txt .
Poi inserisci al suo interno nella prima riga i campi da utilizzare separati dal segno "|".
esempio:id|url img|testo h1| ecc....
Poi in ogni riga inserisci le informazioni delle webcam separandole con ils egno "|",nell'ordine definito nella prima riga.
es:
1|http://urlimg.com|webcam di testGrazie mille probid per l'aiuto... ho ancora alcuni fubbi però... dimmi se faccio bene:
1 - creo un file .txt con all'interno i campi che voglio che ogni pagina abbia al suo interno.
es. id = numero che identifica la pagina, h1 = titolo, url img = url dell'immagine...2 - nello stesso file nella riga successiva scrivo quello che voglio venga "stampato" sulla pagina.
es. per la webcam n. 1 scrivo: 1 | Webcam Sestriere | http://img.jpg3 - nella pagina vera e propria .php dove voglio per esempio esca l'h1 metto echo $h1
faccio giusto :-D?
Scusate ma come vedete sono proprio agli inizi del php anche se devo dire mi intriga molto!
GRAZIE 2000!
-
@rdo said:
Grazie mille probid per l'aiuto... ho ancora alcuni fubbi però... dimmi se faccio bene:
1 - creo un file .txt con all'interno i campi che voglio che ogni pagina abbia al suo interno.
es. id = numero che identifica la pagina, h1 = titolo, url img = url dell'immagine...2 - nello stesso file nella riga successiva scrivo quello che voglio venga "stampato" sulla pagina.
es. per la webcam n. 1 scrivo: 1 | Webcam Sestriere | http://img.jpg3 - nella pagina vera e propria .php dove voglio per esempio esca l'h1 metto echo $h1
faccio giusto :-D?
Scusate ma come vedete sono proprio agli inizi del php anche se devo dire mi intriga molto!
GRAZIE 2000!
Perfetto :D;)
-
mmm dubbio!
Devo anche creare una pagina webcam.php che in pratica è il "layout" generale dove ci metto il menu, footer, grafica varia... giusto? Poi chiamando webcam.php/id si sostituiscono i campi con quello che c'è salvato nel "database" .csv.
Chissà se starò capendo giusto
-
esatto, unno dei vantaggi grossi é proprio quello hai un solo file php per tutte le webcam. quindi se decidi di cambiare il logo, o il layout o chissá cos´altro lo fai sull´unico file webcam.php e non per ogni pagnie htm di ciascuna webcam
webcam.php e dove andrai a mettere
echo $h1
echo $title nel tag title
echo $img nell´image tag
... e cosí via
-
Probid e centrix, se passate dalla mie parti avvisatemi che vi devo una cena!!!
Grazie mille funziona da diohttp://www.webcam.sciclub.it/webcam.php?id=1 (non guardate l'impaginazione, va sistemata :-D!)
grazie ancora!
-
:):)
Ciao e alla prossima!
-
Eheh... pensavate vi lasciavo subito in pace è!
Altro problema! Come forzo manualmente le misure di un immagine?<?php echo $urlim?>" width="320" height="240"> non mi fa niente...
SCUSATE SCUSATE E SCUSATE!
-
piú della cena potresti sparare un bel BL hai tre opzioni:
kitesurf-italia. com
mg-montagna. com
mgsnowboard. com
Tutti e tre con la sezione webcam, meglio se linki quello del kiteMi raccomando vatti a studiare l´url rewrite che cosi com´é, sopratutto a causa del ?id non ti indicizza o ti inidicizza male. Meglio un ?cam=1 ma ripeto quasi d´obbligo l´url rewrite.
added:
abbiamo postato con un secondo di differenza ... io vedo che il width e l'heigt ti funzionano benissimo.
Ah, magari ti interessano anche le gdlib. per capire lo script che probid usa php.net. Ad esempio
array_shift
-
Ciao rdo,ho spostato il tuo ultimo messaggio sul mod rewrite qui:
http://www.giorgiotave.it/forum/mod-rewrite-e-tecniche-di-url-redirect/41345-url-riscritto-non-funziona.html
Ciao!
-
Grazie mille ;-)!
-
Se io un giorno volessi trasferire il database che adesso è un normalissimo .txt l'operazione sarà semplice? Perchè non vorrei scrivermi tutti i campi e poi, una volta sviluppato il sito doverlo rifare...
Se volessi aggiungere anche altri campi come vedete in http://www.webcam.sciclub.it/webcam-montagna.php?id=1 tipo "descrizione" non diventa un pò un casino tenere tutto su .txt? Non converrebbe passare direttamente a mysql?Gracias!
-
Certo che si potrebbe fare e non sarebbe per niente difficile...;)
Ciao!
-
@probid said:
Certo che si potrebbe fare e non sarebbe per niente difficile...;)
Ciao!Mi puoi indicare qualche guida per realizzare questo "upgrade"?
Potrei anche cercare io su mr. google ma non saprei con che termini!Grazie mille, davvero!
-
Try this:
[php]
<?php// configurazione
$server="";
$username="";
$password="";
$database="";// fine config
mysql_connect($server,$username,$password);
mysql_select_db($database);$db=file("webcam.txt");
$q="CREATE TABLE webcam(";
$tbl=explode("|",$db[0]);
foreach($tbl as $campo){
$q=$q.$campo." VARCHAR(255) NOT NULL,";
}
$q=$q."TYPE=MyISAM".")";
mysql_query($q) or exit("Errore nella query");
$db=file("webcam.txt");
array_shift($db);
foreach($db as $riga){
mysql_query("INSERT INTO webcam( ". implode(",",$tbl).")"." VALUES (". str_replace("|","','",$riga)."'); ") or exit("Errore nella query");
}
?>[/php]Ciao!
-
Il tuo script mi da Errore nella query, ma stavo pensando che non è indispensabile importare il contentuto di webcam.txt perchè tanto ho inserito solamente UNA webcam di prova, quindi se è più facile e non ti rubo tempo a te potrei anche creare il tutto manualmente da myadmin... (sempre che abbia capito bene la sintassi del tuo script :-D)
Dimmi tu secondo te com'è meglio...
A presto!
-
Bhè,se ricevi un errore fai pure da phpmyadmin che facciamo prima :D.
Crea una tabella chiamata webcam e inserisci i seguenti campi:
id INT 3 not null auto_increment
h1 VARCHAR 255 not null
h2 VARCHAR 255 not null
imgurl VARCHAR 255 not null
imgalt VARCHAR 255 not null
title VARCHAR 255 not nullPoi lo script per mostrare le webcam modificalo così:
[php]
<?php// configurazione
$server="";
$username="";
$password="";
$database="";// fine config
mysql_connect($server,$username,$password);
mysql_select_db($database);$webcam=mysql_fetch_assoc(mysql_query("SELECT * FROM webcam id='$_GET[id]'"));
$id=$webcam[id];
$h1=$webcam[h1];
$h2=$webcam[h2];
$urlim=$webcam[imgurl];
$altim=$webcam[imgalt];
$title=$webcam[title];?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Webcam </title>
<link href="wb.sc.it.css" rel="stylesheet" type="text/css">
</head><body>
<h1 class="h1">
<?php echo $h1?>
</h1>
<p class="h1">
<?php echo $h2?>
</p>
<table width="755" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#DFDFE1">
<tr>
<td bgcolor="#000033"><img src="http://www.giorgiotave.it/forum/images/supner.jpg" width="757" height="60"></td>
</tr>
<tr>
<td><div align="center">
<table width="755" border="0" cellpadding="0" cellspacing="0" class="regionetd">
<tr>
<td width="202"><div align="center"><script type="text/javascript"><!--
google_ad_client = "pub-0471560296296297";
google_alternate_color = "333333";
google_ad_width = 120;
google_ad_height = 240;
google_ad_format = "120x240_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "333333";
google_color_bg = "333333";
google_color_link = "FFFFFF";
google_color_url = "CCCCCC";
google_color_text = "CCCCCC";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></td>
<td width="350"><div align="center"><img src="<?php echo $urlim?>"></div></td>
<td width="202"><div align="center"><a href="http://www.webcam.sciclub.it/" class="framedx">Guarda le altre <strong>148 webcam</strong> sparse in tutta italia.</a></div></td>
</tr>
<tr>
<td colspan="3"><script type="text/javascript"><!--
google_ad_client = "pub-0471560296296297";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "333333";
google_color_bg = "333333";
google_color_link = "68BA34";
google_color_url = "666666";
google_color_text = "CCCCCC";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
</tr>
</table>
</div></td>
</tr>
<tr>
<td class="testo"><div align="center" class="regionetd">Webcam by www.valtline.it </div></td>
</tr>
<tr>
<td bgcolor="#000033" class="testo"><img src="http://www.giorgiotave.it/forum/images/infner.jpg" width="757" height="60"></td>
</tr>
</table>
<table width="755" height="130" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><img src="http://www.giorgiotave.it/forum/images/sup.jpg" width="760" height="20"></td>
</tr>
<tr>
<td height="23" class="tabluad"><div align="center"><a href="http://www.webcam.sciclub.it/ad.htm" target="_blank" class="back2">Offerte Speciali </a></div></td>
</tr>
<tr>
<td height="23" class="tabluad"><div align="center"><a href="http://www.sciclub.it" target="_blank" class="back2">Sci Club </a></div></td>
</tr>
<tr>
<td height="23" valign="middle" class="tabluad"><div align="center"><a href="php/mail/form.php" target="_blank" class="back2"> Segnalaci una webcam</a></div></td>
</tr>
<tr>
<td height="23" class="tabluad"><div align="center">
<div align="center"><a href="http://www.webcam.sciclub.it/" class="back2">» guarda le altre webcam «</a></div>
</div></td>
</tr>
<tr>
<td><img src="http://www.giorgiotave.it/forum/images/inf.jpg" width="760" height="20"></td>
</tr>
</table>
<p class="copy"> 2005 <a href="http://www.webcam.sciclub.it" class="copy">www.webcam.sciclub.it</a>. - Tutti i diritti riservati - <a href="http://www.valtline.it/" class="copy">credits</a> - <a href="mailto:[email protected]" class="copy">email</a></p></body>
</html>[/php]Ciao!
-
Ciao!
Ho provato a creare i campi ma mi da errore:#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
Cosa significa??
Grazie!
-
Significa che hai impostato più di un campo come auto_increment.
Imposta soltanto il campo id con quel parametro
Ciao!