SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 05.01.2011, 17:53:50
tushkanwn tushkanwn ist offline
Anfänger
 
Registriert seit: Jan 2011
Alter: 35
Beiträge: 6
tushkanwn befindet sich auf einem aufstrebenden Ast
Datensätzen in Tabellen ausgeben. Eine Zeile fehlt!

Hallo! Habe folgendes Problem: habe mir ein Suchformular mit einer Suchfunktion gebastelt, die die gesamte Datenbank nach einem Suchbegriff durchsucht und die Ergebnisse in Tabellen ausgibt. Es funzt alles soweit, nun fehlt immer ein Datenzatz in jeder Tabelle.
D.h. wenn es drei Einträge in der Tabelle 'kostenstelle' vorhanden sind werden nur zwei davon ausgegeben. In je Tabelle wird die erste Zeile immer leer ausgegeben, die anderen sind befüllt.
Wie kann ich diese erste Zeile mit meinem Datensatz befüllen?

Bitte um Hilfe!

Hier ist der Code:

PHP-Code:
function mysqlSearch($volltext)
{

    
// replace multiple whitespaces with a simple blank
    
$aSearch explode(' 'preg_replace('#\s+#'' '$volltext));
       
    
// count search words once
    
$iSearch count($aSearch);
    if (
$iSearch == 0) {
        return array();
    }
    
// remove addslashes (automatically executed by php) and use mysql_real_escape_string instead. it's more secure against sql injection
    
if (get_magic_quotes_gpc()) {
        
$aSearch array_map('stripslashes'$aSearch);
    }
    
$aSearch array_map('mysql_real_escape_string'$aSearch);
    
     
    
// get all tables in selected database
  
       
    
$sSQL1 'SHOW TABLES';
    
$rRes1 mysql_query($sSQL1);

    
      
// save hits
    
$aHits = array();
    
    while (
$aTable mysql_fetch_array($rRes1)) {
        
$sTable $aTable[0];
    
            
        
// get all columns from each table
        
$sSQL2 "SHOW COLUMNS FROM `$sTable`"
        
$rRes2 mysql_query($sSQL2);
     
        
        
        
// combine search words with columns
        
$aPermutation = array();
        while (
$aColumn mysql_fetch_assoc($rRes2)) {
            
$sColumn $aColumn['Field'];
           
            for (
$i 0$i $iSearch$i++) {
                
$volltextword $aSearch[$i];
                
                
$aPermutation[] = "MATCH($sColumn) AGAINST ('.%$volltext%.' IN BOOLEAN MODE)";
                
            echo 
$str;    
            }
        }
        
        
// combine as OR-condition
        
$sSQL4 "SELECT * FROM `$sTable` WHERE " implode(' OR '$aPermutation);
        
        
$rRes4 mysql_query($sSQL4);
        
        
// collect result
        
        
while ($aHit mysql_fetch_assoc($rRes4)) {
                
          
        
$total_cols count($aHit);
          
$aHits[$sTable][] = $aHit;
        print 
"<HTML><BODY>";
          print 
"<br></br>";
          
          print 
"<p><table width='40%' border='1' cellspacing='0' cellpadding='0' align='left'>";
          print 
"<tr><td colspan=$total_cols align=center><b>".$sTable."</b> </td> </tr>";
          
$sSQL2 "SHOW COLUMNS FROM `$sTable`"
        
$rRes2 mysql_query($sSQL2);
          
        while (
$aColumn mysql_fetch_assoc($rRes2)) {
                
$sColumn $aColumn['Field'];
      
          print 
"<td>";
        print 
$sColumn."&nbsp;";
        print 
"</td>";       
        }
          
          print 
"<tr>";          
          
$y=0;          
        while(
$y $total_cols){          
        print 
"<td>";             
        print 
$row[$y]."&nbsp;";          
        print 
"</td>";
      
          
$y++;
  }
    
        print 
"</tr>";
    
    
        while(
$row mysql_fetch_row ($rRes4)) {        
        
$y 0;
        print 
"<tr>";
        while(
$y $total_cols){
        print 
"<td>";    
        print 
$row[$y]."&nbsp;<br>";
        print 
"</td>";
        

        
$y++;
    }
     
          print 
"</tr>";
  
  }
        
            print 
"</TABLE></BODY></HTML>";
           print 
"<br></br>"
           print 
"<br></br>";                         
        
            
//      var_dump($aHit);   
        
        
}             
    }
    print 
"<br>";   
  
// return $aHits;
    
}

echo 
mysqlSearch($volltext);


var_dump($aHit) zeigt mir die fehlenden Einträge!
Mit Zitat antworten
  #2  
Alt 06.01.2011, 08:12:55
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Beiträge: 2.269
DokuLeseHemmung befindet sich auf einem aufstrebenden Ast
AW: Datensätzen in Tabellen ausgeben. Eine Zeile fehlt!

Zitat:
PHP-Code:
  while ($aHit mysql_fetch_assoc($rRes4))
//....................
 
while($row mysql_fetch_row ($rRes4)) { 
2 Schleifen, welche auf $rRes4 rum reiten?
Das kann nichts werden!

Vermutlich suchst du JOINs.
A Visual Explanation of SQL Joins
Mit Zitat antworten
  #3  
Alt 06.01.2011, 10:29:32
tushkanwn tushkanwn ist offline
Anfänger
 
Registriert seit: Jan 2011
Alter: 35
Beiträge: 6
tushkanwn befindet sich auf einem aufstrebenden Ast
AW: Datensätzen in Tabellen ausgeben. Eine Zeile fehlt!

Danke für die Antwort! Wie kann ich jetzt den fehlenden Eintrag ausgeben?
Mit Zitat antworten
Antwort

Stichworte
ausgabe, mysql, php, suche


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Daten aus 2 Tabellen entnehmen wenn keine ID vorhanden nur Tabelle 1 ausgeben Multipar MySQL 4 21.04.2008 12:20:18
Tabellen verknüpfen und in PHP ausgeben Steelrose MySQL 5 16.08.2005 17:08:31
Array durchsuchen, jede Zeile mit Kriterium ausgeben SaKrifieD PHP Grundlagen 2 03.06.2005 11:25:19
Variable übergeben und Zeile ausgeben thorben PHP Grundlagen 44 10.04.2004 09:21:48
Tabellen in Unterschiedlichen Farben ausgeben --hilfe-- inkvc17 PHP für Fortgeschrittene und Experten 2 29.03.2004 21:47:14


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:36:52 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.


© 2001-2018 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt