Aiuto

  • Creatore Discussione Creatore Discussione AdN
  • Data di inizio Data di inizio

AdN

Nuovo Utente
23 Gen 2007
1
0
0
ciao a tutti sono un nuovo utente o meglio UTONTO vi scrivo per un problema con php

premetto che io non ci capisco una mazza ma sto aiutando un mio amico a relizzare un sito (mi occupo più della parte grafica)
Vi spiego le cose come me le ha spiegate lui perhcè io ripeto non ci capisco molto.

Il sito è strutturato per la maggior parte n php che prendono i dati da dei file di testo con estensione .db è un sito su un negozio di elettrodomestici...
allora il problema è questo ci sono due menu a tendina per la ricerca dei prodotti in base alla marca e in base al tipo di prodotto e quelli bene o male funzionano...
il problema sorge con la ricerca tramite l'inserimento "manuale" della ricerca...

allora la ricerca avviene su un solo campo

  • #TELEFONIA#andrea#1111111#Organizza la tua vita lavorativa e personale con un cellulare dall\\#22012007121751.jpg#Cellulare-gsm#D730#libero#456

    #TELEFONIA#Samsung#22222#Organizza la tua vita lavorativa e personale con un cellulare dall\\#22012007121751.jpg#Cellulare-gsm#D730#libero#678

in questo caso l'ultimo 456 per uno e 678 nell'altro

bene finchè io cerco 456 appare solo 456 idem per 678

se io però immetto solo 6 mi appaiono tutti e 2 sia 456 che 678 e qui sta il problema questo non deve accadere

di seuguito vi scrivo le stringhe di comando del form di ricerca e della pagina search.php


FORM RICERCA

immagine24rk.png


SEARCH PHP

immagine19pu.png




RAGAZZI CONFIDO IN VOI...a sto mio amico gli devo pure un sacco di favori e se glielo risolvo (grazie a voi) diciamo che ricevo un annulamento del tutto

ieri siamo stati fino alle 3 a impazzire (più che altro lui io ero di supporto morale visto che non ci capisco quasi nulla)

se vi servono altre info fatemelo sapere

VI PREGO AIUTATEMI


grazie un saluto

AdN
 
Se non sbaglio il problema è propio nell'utilizzo della funzione che ti ho segnato nel codice seguente

Codice:
if([b][COLOR="Red"]stristr($deti[9], $query)[/COLOR][/b])

in quanto questa funzione controlla se la stringa passata come secondo parametro ($query) è contenuta all'interno del primo parametro ($deti[9]), dunque se in query c'è 6 la vostra ricerca darà come risultati tutti gli elementi del file che contengono il 6, non solo quelli che hanno il 6 all'inizio ma tutti quelli che lo contengono al loro interno.

A mio avviso dovete cambiare il tipo di confronto se non volete cose simili, potreste ad esempio effettuare un confronto carattere per carattere.

PS. la prossima volta non postare delle immagini del codice, ma scrivi propio il codice facendo copia e incolla dal file php ad esempio, perchè così rendi difficoltoso il controllo del codice agli altri
 
Ultima modifica:

Discussioni simili