Kijk,...
Ik heb hier een script die een naam zoekt uit mijn database, achter die naam zit nog een heel formulier...
Dus wil ik dat het mogelijk is dat die doorlinkt naar dat formulier, die uit de database moet worden gehaald.

Hier is de code waar die, de naam op zoekt (dit werkt gewoon)
___________________________________________________

Table.php

<?php
{
echo "<font color=#339933> <h3>Resultaten</h3></font><p>";
include ('config.php');
if(empty($_POST['zoekterm']))
{
echo "geen zoekwoord ingevuld
<br><br><A HREF='zoeken.php'>Zoek opnieuw</a> &nbsp; <A HREF='index.php'>Beginpagina</A> ";
}
else
{
$sql = "SELECT * FROM mutatie2 WHERE naam LIKE '%$_POST[zoekterm]%' ";

$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{

echo "<table border='0'>";
while ($row = mysql_fetch_array($res))
{
echo "<tr>
<td><a href=search_results.php> $row[naam] </a></td>
</tr>";
}
}
echo "</table>
<br><br><hr width=140><A HREF='zoeken.php'>Zoek opnieuw</a> &nbsp; <A HREF='index.php'>Beginpagina</A> ";
}
}
?>
________________________________________________________

Hier het script waar die heel het formulier moet laten zien...
Ik heb ff dik gedrukt waar ik weet dat daar de fout zit, ik heb op internet gezocht maar ik weet het echt niet!

search_results.php

<?php
{
echo "<font color=#339933> <h3>Resultaat</h3></font><p>";
if (!@mysql_select_db("webapplicatie", @mysql_connect("localhost", "root", "")))
{
echo "Er kan geen database connectie gemaakt worden.";
exit();
}
$sql = "SELECT * FROM aanvrager WHERE name_software FROM '%$_POST[zoekterm]%'";

$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{

echo "<table border='0'>";
while ($row = mysql_fetch_array($res))
{
echo "<p>
<TD class=head colSpan=2><center>Mutatieformulier McD/IT</center><br></TD>
</TR><TR>
<TD class=left vAlign=top width=200>Type Mutatie:</TD>
<TD class=right> $row[type_mutatie]<BR/></TD>
</TR> <TR>
<TD class=left width=200>Naam:</TD>
<TD class=right> $row[naam]</TD>
</TR><TR>
<TD class=left width=200>BSN-nummer:</TD>
<TD class=right> $row[bsn_nummer]</TD>
</TR><TR>
<TD class=left width=200>Afdeling:</TD>
<TD class=right> $row[afdeling]</TD>
</TR><TR>
<TD class=left width=200> Mutatiedatum:</TD>
<TD class=right> $row[mutatiedatum]</TD>
</TR><TR>
<TD class=left width=200>Geboortedatum:</TD>
<TD class=right> $row[dag] $row[maand] $row[jaar]</TD>
</TR><TR>
<TD class=left width=200>Aanvrager:</TD>
<TD class=right> $row[aanvrager]</TD>
</TR><TR>
<TD class=left width=200>HR/Manager:</TD>
<TD class=right> $row[hr_manager]</TD>
</TR><TR>
<TD class=left width=200>MCD/IT:</TD>
<TD class=right> $row[mcd_it]</TD>
</TR><TR>
<TD class=left width=200>Toegangspas:</TD>
<TD class=right> $row[toegangspas]</TD>
</TR><TR>
<TD class=left width=200>Computer/Laptop:</TD>
<TD class=right> $row[computer]</TD>
</TR><TR>
<TD class=left width=200>Telefoon:</TD>
<TD class=right> $row[telefoon]</TD>
</TR><TR>
<TD class=left width=200>Blackberry:</TD>
<TD class=right> $row[blackberry]</TD>
</TR><TR>
<TD class=left width=200>Netwerktoegang, toegang tot:</TD>
<TD class=right> $row[afdelingmap] <BR/> $row[projectfolder]</TD>
</TR><TR>
<TD class=left width=200>E-mail, toegang tot:</TD>
<TD class=right> $row[iedereen] <BR/> $row[tot_afdeling] <BR/> $row[toevoegen]</TD>
</TR><TR>
<TD class=left width=200>Topdesk:</TD>
<TD class=right> $row[topdesk]</TD>
</TR><TR>
<TD class=left width=200>McDonald's E-ID, toegang tot:</TD>
<TD class=right> $row[accessmcd] <BR/> $row[mcconnect] <BR/> $row[magic]</TD>
</TR><TR>
<TD class=left width=200>GROIP, toegang tot:</TD>
<TD class=right> $row[online] <BR/> $row[offline] <BR/> $row[matrix]</TD>
</TR><TR>
<TD class=left width=200>IDW/GDW, toegang tot:</TD>
<TD class=right> $row[sales] <BR/> $row[pmx] <BR/> $row[financial_reports] <BR/> $row[tda]</TD>
</TR><TR>
<TD class=left width=200>MSIS:</TD>
<TD class=right> $row[msis]</TD>
</TR><TR>
<TD class=left width=200>Ecoin:</TD>
<TD class=right> $row[ecoin]</TD>
</TR><TR>
<TD class=left width=200>Oracle, toegang tot:</TD>
<TD class=right> $row[discoverer_viewer] <BR/> $row[discoverer_plus] <BR/> $row[onderhouden_rf] <BR/> $row[onderhouden_omzet] <BR/> $row[onderhouden_pmx] <BR/> $row[rapportage] <BR/> $row[mcopco]</TD>
</TR><TR>
<TD class=left width=200>Citrix, toegang tot:</TD>
<TD class=right> $row[citrix] </BR> $row[pilon]</TD>
</TR><TR>
<TD class=left width=200>Toelichtingen:</TD>
<TD class=right> $row[toelichting]</TD>
</TR>
</p>

";
}
echo "</table>";
echo "<br><br><A HREF='zoeken.php'>Zoek opnieuw</a> &nbsp; <A HREF='index.php'>Beginpagina</A> &nbsp; <A HREF='bewerken.php'>Bewerken</A>";
}
else
{
echo "<p>Er is niets gevonden op jou zoekterm:<b> $_POST[zoekterm]</b></p><br>
<A HREF='zoeken.php'>Zoek opnieuw</a> &nbsp; <A HREF='index.php'>Beginpagina</A>
";

}
}
?>
____________________________________
Hier ook het zoek formuliertje:

Zoeken.php

<font color="#339933"><h3>Zoeken Mutatie formulier</h3></font>
<?php
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
die('Not connected : ' . mysql_error());
}
$db_selected = mysql_select_db('webapplicatie', $link);
if (!$db_selected) {
die ('Can\'t use webapplicatie : ' . mysql_error());
}
echo "
<p>
<FORM METHOD=\"POST\" ACTION=\"tabel.php\">
Vul de naam in van degene die u zoekt:<br><br>
<input type=\"naam\" name=\"zoekterm\" size=\"30\" ><br><br>
<input type=\"submit\" name=\"submit\" value=\"Zoeken\">
</p>
<br>
<br>";
?>
<TD class=left> <A HREF="javascript:javascript:history.go(-1)">Terug</A></td>

_____________________________________

Ik denk zelf dat het maar een klein iets is! ..
En dat het wsl gewoon een domme fout is..

Maar ik ben nog maar een beginnelijk =]

Je kunt maar 1x "FROM" gebruiken.

Om conidities in je "WHERE" op te geven gebruik je gewoon het is-teken "=".

Dus: naam_software = '%$POSTblabla%'


P.s. Misschien handig om je variables in mysql_real_escape_string() te zetten.
Nu is je script namelijk gevoelig voor SQL injectie. Google daar maar op.
Dat was dom van mij, de sql is nu,

$sql = "SELECT * FROM mutatie2 WHERE naam = '%zoekterm&'";


Maar ik krijg nog steeds geen resultaat.
Ik vraag me nu ook af of ik dit goed heb gedaan:

<a href=search_results.php> $row[naam] </a>

maar met welke query moet het formulier opvragen in "search_results.php


Misschien dat je hier wat aan hebt? Zo uit het losse handje gemaakt en niet getest dus er kunnen wat foutjes in zitten

<?php

# bestanden includen (Jouw config)
include_once ('config.php');

# meldingen declareren
$bericht = array();

# kijken of er wat gepost is
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

# kijken of er wat ingevuld is bij het zoekveld
# dit kan je uitbreiden door strlen te gebruiken om te controleren hoeveel tekens er in zjin gevuld
# nu alleen even kijken of er daadwerkelijk wat is ingevuld
if(!empty($_POST['zoeken']))
{

# er is een zoekwoord ingevuld. Kijken of er in de database iets voorkomt wat er op lijkt.
$Query_zoek = "SELECT id, naam FROM mutatie WHERE naam like '".%$_POST['zoeken']%."'";

# kijken of query gelukt is
if($Result = mysql_query($Query_zoek))
{

# controleren of er wat gevonden is
if(mysql_num_rows($Result) > 0)
{

# er is resultaat gevonden
# while loop maken en alle gegevens op het scherm plaatsen
while($row = mysql_fetch_assoc($Result))
{

$bericht [] = '

Er zijn '.mysql_num_rows($Result).' resultaten gevonden<br />
<b>Resultaten</b><br /><br />
<a href="?informatie_id='.$row['id'].'">'.$row['naam'].'</a><br />

';

# dit kan je natuurlijk helemaal zelf uitbreiden door alles in een tabel te stoppen of div en hele opmaak er aan
# te geven maar het gaat even om het idee.

}

}
else
{

# er zijn geen resultaten gevonden, melding schrijven
$bericht[] = 'Er zijn geen resultaten gevonden voor het woord '.$_POST['zoeken'];

}

}
else
{

# query is niet gelukt, melding geven
$bericht[] = 'Het zoeken in de database is mislukt. '.mysql_error();

}

}
else
{

# er is geen zoekwoord ingevuld melding plaatsen
$bericht[] = 'U heeft geen zoekwoord ingevuld!';

}

}

?>

<html>
<head>

</head>
<body>

	<form method="POST" action="<?php echo basename ($_SERVER['PHP_SELF']) ?>" />
    
    	<table>
        
        	<tr>
            
            	<td>Zoekwoord </td><td><input type="text" name="zoeken" value="" /></td>
            
            </tr>

            <tr>

                    <td><input type="submit" value="Zoeken" /></td>

            </tr>

        
        </table>
    
    </form>
    
    	<?php
		
			# de zoek resultaten of de foutmeldingen op het scherm weergeven
			if(!empty($bericht))
			{
			
				foreach ($bericht as $meldingen)
				{
				
					echo $bericht;
				
				}
			
			}
					  
		
		?>

</body>
</html>
Hey, thanks voor de moeite!

Maar hij wilt het niet doen
Hij geeft een error in de zoek query :*(
marco schreef op 08.01.2010 15:34

Hij geeft een error in de zoek query :*(

En wij kunnen dit uiteraard lezen in onze glazen bol.

Nee, misschien wel handig on de error te vermelden.
Eventueel met het stukje bijbehorende code.
" Parse error: parse error in ....\www\webapplicatie\zoek.php on line 20 "

De bij behorende code staat in de post van Niels, bij $Query_zoek !

Ja dat dacht ik al.. dit klopt niet helemaal

'".%$_POST['zoeken']%."'";

Hoe het wel moet schiet me even niet te binnnen
Die % tekens horen in ieder geval niet buiten quotes, die zijn onderdeel van de string:

'%".$_POST['zoeken']."%'";
<?php
$Query_zoek = "SELECT id, naam
FROM mutatie
WHERE naam like '%" . $_POST['zoeken'] . "%'";
?>
Denk ook even aan de beveiliging.
Bovenstaand is lek => sql-injection.
Zie [php]mysql_real_escape_string[/php]().
(sorry dat ik nu pas reageer, maar ik was een weekendje weg)

Als ik nu bij Niels zijn script een naam zoek, krijg ik standaart 'Array' te zien.

En thanks, ik moet idd nog naar sql-injection kijken!

Reageren