Joomla.it Forum
Non solo Joomla... => Sviluppo => : renix 28 Jul 2010, 17:33:48
-
Ciao, ho realizzato un sito dedicato all'urbanistica del Comune di Foggia - www.urbanisticafoggia.org (http://www.urbanisticafoggia.org) e ho necessità di integrare nel database di joomla un form di ricerca fatto in questo modo: campo1: foglio, campo2: particella. Inserendo questi dati, es. foglio 120, particella 41, il risultato della ricerca dovrebbe restituirmi tre opzioni: dentro, parzialmente, fuori. "Dentro" se la zona ricade nell'area da noi richiesta, "parzialmente" se ricade in parte e "fuori" se non rientra. Ho un elenco per le parti che sono fuori e uno per le pari che ricadono parzialmente. A dirlo sembra semplice, ma purtroppo non ho dimestichezza con le query e non so da dove cominciare. Qualcuno sa darmi una dritta?
Grazie
-
ciao renix,
benvenuto sul forum! :)
prova a cercare qualche estensione tra quelle già fatte, altrimenti la questione non è propriamente banale: parti da fabrik (fabrikar.com).
ciao,
marco
-
Ciao Marco, grazie per l'aiuto... gli do un'occhiata.
Cmq ho creato, con phpmyadmin, due tabelle: "dentro", "parzialmente" e ho importato i dati in ognuna.
Ora ho due tabelle popolate dai dati che l'eventuale utente del sito dovrebbe inserire nel form di ricerca ed ottenere il risultato: dentro, parzialmente, fuori.
Quale operazione devo effettuare per andare avanti?
Grazie
-
http://wiki.joomla.it/index.php?title=Creazione_di_un_componente_con_MVC_in_Joomla_1.5_-_Parte_1
buona lettura.
ciao,
marco
-
Molto interessante.
Grazie Marco
-
Ho risolto creando una sola tabella nella quale ho inserito tutti i dati.
Posto il codice, potrebbe essere utile a qualcuno:
Form
<html>
<body>
<form method="post" action="risultati.php">
<fieldset>
Foglio: <input type="text" name="foglio" />
Particella: <input type="text" name="particella" />
</fieldset>
<input type="submit" value="Cerca">
</form>
</body>
</html>
Risultati:
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password') or die("Errore di connessione al db");
mysql_select_db('nomedatabase') or die("Non riesco a selezionare il dbase $MYSQL[dbase]");
$recordset = mysql_query ("SELECT * FROM aquila_foggia WHERE foglio = '".$_POST[foglio]."' AND particella = '".$_POST[particella]."'") or die("errore nella query");
while ($linea = mysql_fetch_array($recordset, MYSQL_ASSOC)) $risultato[] = $linea;
mysql_free_result($recordset);
mysql_close($link);
switch ($risultato[0][tipo]) {
case "Totalmente ricadente":
echo "<h1>$_POST[foglio]/$_POST[particella] Totalmente ricadente</h1>";
break;
case "Parzialmente ricadente":
echo "$_POST[foglio]/$_POST[particella] Parzialmente ricadente";
break;
default:
echo "$_POST[foglio]/$_POST[particella] Non ricadente";
break;
}
?>
Ora ho un altro problema: ho inserito il tutto in joomla in un modulo wrapper e un modulo php ma niente.
il problema è che mi restituisce 404 - Componente non trovato con questo url: http://www.urbanisticafoggia.org/index.php/risultati.php. Come fare per avere http://www.urbanisticafoggia.org/risultati.php, quindi senza index.php
-
ciao,
quello che hai fatto è esattamente ciò che NON va mai fatto.
1.
non è sicuro! stai passando al db dei dati senza alcun controllo! SQL injection sicura. >:( >:(
2.
non è conforme al coding standard di joomla
3.
è ovviamente sbagliata l'action, perché porta fuori da joomla.
studia il link che ti ho indicato prima di postare codice che possa far sbagliare gli altri.
ciao,
marco
-
Hai ragione, chiedo scusa a tutti.