Bepaalde colom selecteren uit de databae

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sjaakmans

sjaakmans

15/03/2006 14:51:00
Quote Anchor link
Hallo,

Ik ben bezig met een script die een fixed length bestand moet maken.
Nu is het de bedoeling dat er een ; gescheiden bestand wordt geupload en als dat gebeurd is zoekt het script uit de omschrijving of bepaalde colommen bestaan.

Alleen ik kan wel kijken of er een colom bestaat met die naam of iets wat er op lijkt ik gebruik dit script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$query = "SHOW FIELDS FROM `SL_HART_in` LIKE '%".$woord."%'";


Dat werkt alleen nu moet het anders om dat moet als volgt:
Er moet een colom uit de database gehaald worden en die moet dan matchen gedeeltelijk of helemaal met de omschrijving uit het .csv bestand.

Alleen hoe doe ik dat? Ik kan het niet vinden

Groeten,

Sjaakmans
 
PHP hulp

PHP hulp

05/11/2024 15:51:58
 
- wes  -

- wes -

15/03/2006 14:57:00
Quote Anchor link
select kolomnaam where like etc ? basis slq
 
Sjaakmans

sjaakmans

15/03/2006 14:57:00
Quote Anchor link
Nouw, het moet net andersom :D dat gaat wel maar andersom gaat niet :(
 
Willem Jan Z

Willem Jan Z

15/03/2006 14:59:00
Quote Anchor link
Andersom?
 
Sjaakmans

sjaakmans

15/03/2006 15:00:00
Quote Anchor link
Ja, ik lees nu het .csv bestand uit en vergelijk het dan met de database maar het moet colommen uit de database vergelijken met het .csv bestand
 
- wes  -

- wes -

15/03/2006 15:03:00
Quote Anchor link
wat is het verschil tussen dat? zelfde als 5x7 een andere uitkomt zou hebben dan 7x5 (wat niet zo is voor de mensen die teveel spijbelen)
 
Sjaakmans

sjaakmans

15/03/2006 15:05:00
Quote Anchor link
Nee kijk ik heb denk een beter voorbeeld:

In het cvs staat de inschrijving zeg maar reactiedatum
In de database staat datum datum en reactiedatum matched niet.
Maar reactiedatum en datum matched weer wel.

En dat moet zo eerst de ene check werkt het niet dan de andere alleen hoe doe ik de andere
 
- wes  -

- wes -

15/03/2006 15:06:00
Quote Anchor link
hoe kan reactiedatum en datum niet matchen, maar datum en reactiedatum wel...
 
Sjaakmans

sjaakmans

15/03/2006 15:07:00
Quote Anchor link
Probeer maar eens met de like functie in de database dan werkt het niet omdat het paar letters meer heeft.

Maar als het andersom minder letters heeft maar wel in de zelfde volgorde dan werkt het wel
 
- wes  -

- wes -

15/03/2006 15:10:00
Quote Anchor link
ben ik echt de enige die hier compleet clueless is wat sjaakmans bedoeld :) ik zie het niet sorry, verschil tussen appel + peer en peer + appel zie ik nie
 

15/03/2006 15:11:00
Quote Anchor link
Waarom gebruik je backticks? Gebruik ze liever niet!
 
Sjaakmans

sjaakmans

15/03/2006 15:13:00
Quote Anchor link
backticks??

Wes:
Het is voor mij simpel normaal selecteer je een woord uit de database met een like als je het niet precies weet of als het ergens tussen staat.
Maar nu moet het andersom want als je een like op de database doet naar reactiedatum en datum staat er wel in werkt het niet. En andersom zou het wel moeten werken
 
Barman V

Barman V

15/03/2006 15:22:00
Quote Anchor link
Wat zijn je datatypes van je kolommen in tabel SL_HART_in?

edit:
Dus datatypes van de velden die je probeert te matchen
Gewijzigd op 15/03/2006 15:22:00 door Barman V
 
Sjaakmans

sjaakmans

15/03/2006 15:24:00
Quote Anchor link
In het csv bestand is het reactiedatum.
En in de database Datum

Dit is niet het enige! Er zijn er meer zo! Dit is maar een voorbeeld!
 
Han eev

Han eev

15/03/2006 15:26:00
Quote Anchor link
Trouwens, ik weet niet waar jij SHOW FIELDS vandaan haalt, maar ik kan dat niet vinden op mysql.com.
Misschien heb je hier wat aan:
http://dev.mysql.com/doc/refman/5.1/en/show-columns.html

http://www.mysql.com/search/?q=SHOW+FIELDS&charset=utf-8
Gewijzigd op 15/03/2006 15:27:00 door Han eev
 
Sjaakmans

sjaakmans

15/03/2006 15:33:00
Quote Anchor link
SHOW FIELDS is a synonym for SHOW COLUMNS Staat onderaan ;)
 
Han eev

Han eev

15/03/2006 15:36:00
Quote Anchor link
Ohw srry :$

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?PHP
$query
= "SHOW COLUMNS FROM SL_HART_in FROM db_name LIKE '".$woord."'";
// dus nu als ze precies hetzelfde zijn
?>
Gewijzigd op 15/03/2006 15:40:00 door Han eev
 
Sjaakmans

sjaakmans

15/03/2006 15:38:00
Quote Anchor link
Jep klopt maar dat is eingelijk niet het antwoord op mn vraag
 
Han eev

Han eev

15/03/2006 15:42:00
Quote Anchor link
Je wilt een csv bestand uitlezen?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?PHP
$file
= file('bestand.csv');
foreach($file as $in) {
$arr = explode(",",$in);
$query = mysql_query("SHOW COLUMNS FROM SL_HART_in FROM db_name LIKE '".$arr[1]."'");
if(mysql_num_rows($query) == 1) {
echo "match";
}
}

// zoiets?
?>
 
Sjaakmans

sjaakmans

15/03/2006 15:45:00
Quote Anchor link
Ik denk dat ik een foreach ga gebruiken dat werkt redelijk alleen nu moet ik nog hebben als een gedeelte van het woord mached hoe maak ik dat?
 
Sjaakmans

sjaakmans

15/03/2006 15:52:00
Quote Anchor link
Ik denk dat ik het al heb :):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
        include("config.php");
        $woord = explode(" ", $woord);
        $woord = str_replace(" ", "", trim($woord[0]));
        
        $query = "SHOW FIELDS FROM `SL_HART_in` LIKE '%".$woord."%'";
        $result = mysql_query($query,$db)or die($query."<br>".mysql_error($db));
        while($rows = mysql_fetch_row($result))
            {
    
                similar_text($rows['0'], $woord, $ronde_1);
                if(strtolower($rows['0']) != strtolower($woord) AND round(100 - $ronde_1) >= 10)
                    {

                        $match = "Ik heb een tabel gevonden die matched maar wel anders is! Moet deze gebruikt worden?
                        <br>Tabel gezocht: "
.$woord."\t <br>Tabel gevonden ".$rows['0']."<p>";
                    }

                else
                    {$i=0;
                        $query = "SHOW FIELDS FROM `SL_HART_in`";
                        $result = mysql_query($query,$db)or die($query."<br>".mysql_error($db));
                        while($rows_2 = mysql_fetch_row($result))
                            {
    
                                foreach($rows_2 as $key => $value)
                                    {

                                          if(strpos(strtolower($value), strtolower($woord)) !== FALSE)
                                              {

                                                    echo $woord."Zit erin";
                                              }
                                    }
                            }    
                    }
            }
?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.