• Home
  • Forum
  • Fare Web
  • PHP

[risolto] Istruzione per estrazione di dati casuali dal db

  • Creatore Discussione Creatore Discussione Altutto
  • Data di inizio Data di inizio 22 Ott 2013
Prec.
  • 1
  • 2
Primo Prec. 2 di 2

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 24 Ott 2013
  • #21
ciao
scoperto l'inghippo:
quella parte di script che estrae il nome del campo ti estrae sempre il nome dell'ULTIMO campo, nel tuo caso capitolo quindi il like non trova nulla.
spiega bene cosa vorresti ottenere da quello script
 
A

Altutto

Utente Attivo
30 Set 2013
262
0
16
stubborn.altervista.org
  • 24 Ott 2013
  • #22
criric ha scritto:
il mio intervento si riferiva a questa tua risposta

come vedi nel var_dump che ti ha fatto mettere Borgo il nome del campo è "capitolo" che contiene un numero e non del testo, cosi la query non ti restituirà mai un risultato
il problema quindi dovrebbe essere nella variabile $current_col
Clicca per allargare...

Ma infatti quando avevo provato a cercare il campo capitolo conteneva anche lui "test", poi, però, l'ho modificato da varchar a tinyint e ho quindi modificato il record in "12"

borgo italia ha scritto:
ciao
scoperto l'inghippo:
quella parte di script che estrae il nome del campo ti estrae sempre il nome dell'ULTIMO campo, nel tuo caso capitolo quindi il like non trova nulla.
spiega bene cosa vorresti ottenere da quello script
Clicca per allargare...

Dovrei estrarre un record casuale che abbia almeno una colonna che sia "like" $_GET['ricerca']...
Quindi dovrebbe cercare il termine cercato in tutte le colonne, prendere le righe in cui c'è il termine e stamparne a video una a caso
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 24 Ott 2013
  • #23
ciao
allora, come detto e se non ho capito male tu hai una tabella del tipo
Codice:
pagina|argomento|argomento_madre|procedura|definizione|attenzione|prima|seconda|terza| anno_scolastico|capitolo
tu vuoi cercare un record che abbia il termine cercato in uno dei campi esclusi pagina| anno_scolastico|capitolo
quindi devi cercare in
argomento|argomento_madre|procedura|definizione|attenzione|prima|seconda|terza
giusto?
quindi, se non ho capito male io farei semplicemente così
PHP:
<?php
//......
$cercare=addslashes(trim($_GET['ricerca']));
//un piccolo controllo
if($cercare==""){
	//se qualcuno non ha immesso niente
	//un ritorno alla pagina di ricerca da cui proviene il get
}else{
	//dati di connessione
	//qui togli o aggiungi i campi che effettivamente ti servono
	$campi=array('argomento','argomento_madre','procedura','definizione','attenzione','prima','seconda','terza');
	//compongo il like per tutti i campi interessati
	$like="";
	foreach($campi as $nome){
		$like.= " $nome LIKE '%$cercare%' OR ";
	}
	//tolgo l'ultimo or
	$lunga=strlen($like)-4;
	$like=substr($like,0,$lunga);
	//costruisco la query stringa
	$sqla = "SELECT * FROM matematica WHERE  $like ORDER BY RAND() LIMIT 1"; 
	$ressa= mysql_query($sqla, $con2) or die (mysql_error()) ;   
	if(mysql_num_rows($ressa)==0) { 
    	echo "nessun record trovato"; 
	}else{
    	$rowa = mysql_fetch_array($ressa);  
    	echo "Spiega la procedura del seguente argomento:"; 
    	echo $rowa['argomento']; 
	}
//....
}
//....
?>
prova e sappi dire

p.s.
usi il $_GET la ricerca non avviene tramite un form? e se si, usa il metodo POST sostituendo anche
$cercare=addslashes(trim($_GET['ricerca']));
con
$cercare=addslashes(trim($_POST['ricerca']));
molto più sicuro
 
A

Altutto

Utente Attivo
30 Set 2013
262
0
16
stubborn.altervista.org
  • 24 Ott 2013
  • #24
Grazie mille, ora funziona perfettamente

La ricerca avviene tramite un form, ora che funziona tutto, passerò al metodo POST, in fase di sviluppo di solito uso GET per passare i dati più velocemente inserendoli tramite l'url

Grazie per la pazienza infinita che hai avuto nell'aiutarmi
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 24 Ott 2013
  • #25
Bravi!
piccola psservazione per Borgo
PHP:
//tolgo l'ultimo or
$lunga=strlen($like)-4;
$like=substr($like,0,$lunga);
dovrebbe essere uguale a
PHP:
//tolgo l'ultimo or
$like=substr($like,0,-4);
una riga in meno di codice :fonzie:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 24 Ott 2013
  • #26
ciao criric
hai ragione (diamo la colpa al blkout del manuale php)
 
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
Devi accedere o registrarti per poter rispondere.

Discussioni simili

[RISOLTO] [PHP] Istruzione "if" non funziona
  • CristianB72
  • 26 Gen 2017
  • PHP
Risposte
6
Visite
1K
PHP 26 Gen 2017
CristianB72
A
[RISOLTO]Piccolissima istruzione
  • Altutto
  • 1 Ott 2013
  • MySQL
Risposte
7
Visite
2K
MySQL 3 Ott 2013
Altutto
A
L
(risolto)
  • Lollo791
  • 24 Apr 2020
  • MySQL
Risposte
0
Visite
2K
MySQL 24 Apr 2020
Lollo791
L
B
getElementById su piu id(Risolto)
  • BlackPr
  • 24 Apr 2020
  • Javascript
Risposte
7
Visite
3K
Javascript 1 Nov 2021
sonusood2022
S
L
Esercitarsi con Js [RISOLTO]
  • Leonardo Scotti
  • 20 Apr 2020
  • Javascript
Risposte
4
Visite
2K
Javascript 20 Apr 2020
Leonardo Scotti
L
C
[RISOLTO]Inserimento variabile php in input html
  • Cristian83
  • 16 Apr 2020
  • PHP
  • 2
Risposte
20
Visite
8K
PHP 18 Apr 2020
Cristian83
C
L
risolto visualizzazione e ordinamento dati
  • luigithen
  • 13 Apr 2020
  • PHP
Risposte
1
Visite
1K
PHP 13 Apr 2020
luigithen
L
[RISOLTO] SQL PHP IIS
  • moustache
  • 7 Apr 2020
  • PHP
Risposte
8
Visite
2K
PHP 9 Apr 2020
moustache
Ricezione email con destinatari multipli [Risolto]
  • Sergio Unia
  • 6 Apr 2020
  • PHP
Risposte
2
Visite
2K
PHP 7 Apr 2020
Sergio Unia
L
update tabelle in php mysql [risolto]
  • luigithen
  • 31 Mar 2020
  • PHP
Risposte
6
Visite
2K
PHP 31 Mar 2020
luigithen
L
M
Semplice visualizzatore di immagini [risolto con plugin wp]
  • master1986
  • 28 Mar 2020
  • PHP
Risposte
7
Visite
2K
PHP 30 Mar 2020
master1986
M
L
[RISOLTO] Stampa a video risultato count in html
  • Luca Ambrosini
  • 9 Feb 2020
  • PHP
Risposte
13
Visite
4K
PHP 12 Feb 2020
Luca Ambrosini
L
L
[RISOLTO] Eliminare una discussione creata
  • Luca Ambrosini
  • 30 Gen 2020
  • PHP
Risposte
3
Visite
1K
PHP 3 Feb 2020
marino51
[HTML] Problema con scroll bar (risolto)
  • tomorc
  • 17 Nov 2019
  • HTML e CSS
Risposte
0
Visite
2K
HTML e CSS 17 Nov 2019
tomorc
A
[PHP] Problema query insert [RISOLTO]
  • Arawan Omacha
  • 10 Ott 2019
  • PHP
Risposte
14
Visite
3K
PHP 17 Apr 2020
Arawan Omacha
A
B
[PHP] recuperare IP dei server in load balancing [RISOLTO]
  • bdario58
  • 28 Giu 2019
  • PHP
Risposte
3
Visite
2K
PHP 29 Giu 2019
bdario58
B
K
[RISOLTO] Problema Griglia Php+Mysql
  • killu
  • 11 Giu 2019
  • PHP
Risposte
13
Visite
4K
PHP 13 Giu 2019
killu
K
S
  • Bloccata
[RISOLTO] aggiorna tabella da select option asp classic
  • sg2019
  • 10 Mag 2019
  • Classic ASP
Risposte
7
Visite
3K
Classic ASP 11 Mag 2019
sg2019
S
[RISOLTO][Javascript] Datapicker e autocompletamento campo input
  • elpirata
  • 9 Apr 2019
  • Javascript
Risposte
2
Visite
2K
Javascript 9 Apr 2019
elpirata
[RISOLTO][Mysql] Problema insert valori apostrofati
  • elpirata
  • 9 Apr 2019
  • MySQL
Risposte
1
Visite
1K
MySQL 9 Apr 2019
elpirata
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?