php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.12.2004, 14:04  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

ist wirklich nur ein anno-dazumal codeschnippsel, verbindung zur datenbank musst du aufbauen, dann suchstring setzen und durch was er ersetzen soll, wenn die tabellen nen primary-key haben klappts mit sicherheit, allerdings ersetzt das script in allen spalten, weis ja ned ob das ein problem ist, falls du keinen primary-key hast kann ich nicht garantieren ob es funktioniert als ich das script geschrieben habe, ist mir damals aufgefallen dass in manchen fällen es tabellen ohne nicht sauber ersetzt, allerdings hab ich damals nciht die zeit gehabt das zu überprüfen und hab die eine tabelle dann immer hänisch gemacht weil sie nur 3 einträge hatte.

ist leider auch nur ne unkommentierte version, andere hab ich vieleicht noch zuhause, danach schau ich morgen mal falls noch interesse besteht.


ist zwar wohl nicht ganz die lösung deines problems, aber vieleicht kannst du ja einen teil davon gebrauchen, bzw ihn abwandeln.

PHP-Code:
<?
$SearchString 
=  mysql_escape_string('');
$ReplaceString mysql_escape_string('');
$counter 0;
echo 
'Start
'
;

function 
sql_query($query,$file,$line,$debug=FALSE)    {
    global 
$querycounter,$__DEBUGQUERYS,$_qs;
    
$sql mysql_query($query) or die('
'
."\n".'[b]Query: [/b]'.$query.'
'
."\n".$file.'  Line: '.$line.'  
'
."\n".'Error:'.mysql_error());
    (
$__DEBUGQUERYS) OR ($debug) ? print('
'
."\n".''.$query.'  
'
."\n".'[b]['.$file.' Line: '.$line.'][/b] RESULTS:<font color="red">[b]'.@mysql_num_rows($sql)."[/b]</font>\n".'
'
):null;
    
$querycounter++;
    return 
$sql;
}

function 
is_text_field($field) {
    if(
eregi('varchar',$field['Type']) OR eregi('blob',$field['Type']) OR eregi('text',$field['Type']))    {
        Return 
true;
    }
    else    {
        Return 
false;
    }
}
function 
scantable($table) {
    global 
$SearchString,$ReplaceString,$counter;
    
$query "SHOW FIELDS FROM `".$table."`";
    
$sql sql_query($query,__FILE__,__LINE__);
    
$fields = array();
    while(
$data mysql_fetch_assoc($sql)) {
        if(
is_text_field($data)) {
            
$fields[] = $data['Field'];
        }
        if(
$data['Key'] == 'PRI') {
            
$PRIMARY $data;
        }
    }
    if(
count($fields) > 0) {
        
$search '';
        
$fieldlist '';
        
$where '';
        
$update '';
        foreach(
$fields as $val) {
            
$search .= "`".$val."` LIKE '%".$SearchString."%' OR \n";
            
$fieldlist .= "`".$val."`, ";
        }
        if(isset(
$PRIMARY)) {
            
$fieldlist .= "`".$PRIMARY['Field']."`, ";
        }
        
$query2 "SELECT ".substr($fieldlist,0,-2)." FROM `".$table."`  WHERE ".substr($search,0,-5);
        
$sql2 sql_query($query2,__FILE__,__LINE__);
        while(
$data2 mysql_fetch_assoc($sql2)) {
            foreach(
$fields as $val) {
                
$data3[$val] = str_replace($SearchString,$ReplaceString,$data2[$val]);
                
$update .= "`".$val."` = '".addslashes($data3[$val])."', \n";
                
$where .= "`".$val."` = '".addslashes($data2[$val])."' AND \n";
            }
            if(isset(
$PRIMARY)) {
                
$where "`".$PRIMARY['Field']."` = '".addslashes($data2[$PRIMARY['Field']])."'";
                
$query3 "UPDATE `".$table."` SET ".substr($update,0,-3)." WHERE ".$where;
            }
            else {
                
                
$query3 "UPDATE `".$table."` SET ".substr($update,0,-3)." WHERE ".substr($where,0,-6);
            }
            
$counter += mysql_affected_rows();
            
sql_query($query3,__FILE__,__LINE__);
        }
    }
}

$query "SHOW TABLES";
$sql sql_query($query,__FILE__,__LINE__);
while(
$data mysql_fetch_assoc($sql)) {
    
scantable($data['Tables_in_'.$DBNAME]);
}
echo 
'Fertig';
echo 
'
Datensätze gefunden und versucht zu verändert: '
.$counter;
?>
robo47 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.12.2004, 14:10  
Erfahrener Benutzer
 
Registriert seit: 14.01.2004
Beiträge: 2.543
fantast
fantast eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von robo47
ist wirklich nur ein anno-dazumal codeschnippsel, verbindung zur datenbank musst du aufbauen, dann suchstring setzen und durch was er ersetzen soll, wenn die tabellen nen primary-key haben klappts mit sicherheit, allerdings ersetzt das script in allen spalten, weis ja ned ob das ein problem ist, falls du keinen primary-key hast kann ich nicht garantieren ob es funktioniert als ich das script geschrieben habe, ist mir damals aufgefallen dass in manchen fällen es tabellen ohne nicht sauber ersetzt, allerdings hab ich damals nciht die zeit gehabt das zu überprüfen und hab die eine tabelle dann immer hänisch gemacht weil sie nur 3 einträge hatte.
ist das wirklich ein satz ?
__________________
Was ist validität?
fantast ist offline  
Alt 27.12.2004, 14:11  
Gast
 
Beiträge: n/a
Standard

Vorschlag:
In einer MYSQL-DB ist folgendes machbar:
Code:
"
UPDATE tabelle SET
   sortsw1 = REPLACE(sortsw1, 'ß', 'ss'),
   sortsw1 = REPLACE(sortsw2, 'ß', 'ss'),
   sortsw1 = REPLACE(sortsw2, 'ß', 'ss')
";
_____________
mfG -dilemma-
 
Alt 27.12.2004, 14:17  
Gast
 
Beiträge: n/a
Standard

@admin:
nach meiner Uhrzeit habe ich meine verhergehende Antwort um ca: 14:50 Uhr
abgeschickt.
Zu einem Zeitpunkt, als diese beiden Antworten von 'zeusel' schon angezeigt wurden:
Verfasst am: 27.12.2004, 14:36
Verfasst am: 27.12.2004, 14:50

Frage:
Warum erscheint mein Beitrag mit der Uhrzeit 27.12.2004, 14:11 ?????????

mfg -dilemma-
 
Alt 27.12.2004, 14:19  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
Zitat von fantast
Zitat:
Zitat von robo47
ist wirklich nur ein anno-dazumal codeschnippsel, verbindung zur datenbank musst du aufbauen, dann suchstring setzen und durch was er ersetzen soll, wenn die tabellen nen primary-key haben klappts mit sicherheit, allerdings ersetzt das script in allen spalten, weis ja ned ob das ein problem ist, falls du keinen primary-key hast kann ich nicht garantieren ob es funktioniert als ich das script geschrieben habe, ist mir damals aufgefallen dass in manchen fällen es tabellen ohne nicht sauber ersetzt, allerdings hab ich damals nciht die zeit gehabt das zu überprüfen und hab die eine tabelle dann immer hänisch gemacht weil sie nur 3 einträge hatte.
ist das wirklich ein satz ?
:P ich hab jemand auf den ich es schieben kann:P
-> meine tastatur hier @ work, die ist s******, ich bin zu stark an meine @ home gewöhnt, sobaldi ch auf ner tastatur zu schnell tippe die ned meine ist, wirds irgendwie immer böse :P
robo47 ist offline  
Alt 27.12.2004, 14:36  
Gast
 
Beiträge: n/a
Standard Einfaches Script für Datenbankfeld-Manipulierung gesucht

Hallo Ihr,

habe nen kleines Problem und zwar habe ich hier eine Tabelle mit ca. 3000 Datensätzen und ich möchte, dass in Spalte 6, 7 und 8 die Spalten heißen: sortsw1, sortsw2, sortsw3 alle ß durch ss ersetzt werden und die Spalten auch so gleich geupdated werden. Hat jemand da ein paar Codezeilen für mich?
 
Alt 27.12.2004, 14:50  
Gast
 
Beiträge: n/a
Standard

Achherrjeeee....sieht ja erst mal kompliziert aus, aber ich denke die Zeilen, die ich brauche hab ich gefunden...Danke
 
Alt 27.12.2004, 14:54  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von fantast

ist das wirklich ein satz ?
Es gibt Leute die geilen sich an alles auf
 
Alt 27.12.2004, 14:56  
Gast
 
Beiträge: n/a
Standard

Ui thx Dilemma...das ist natürlich noch viel besser
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Kleinanzeigenmarkt Script gesucht zeusel Scriptbörse 4 11.11.2011 10:27
Ganz einfaches Script nur wo ist der Fehler? aerow90 PHP Tipps 2008 10 20.07.2008 23:18
Preis JS Script gesucht eQuin HTML, Usability und Barrierefreiheit 6 04.01.2005 17:22
Attachment Download - Script gesucht Beitragsarchiv 12 03.01.2005 08:56
script gesucht: checkform mit haken php-newbie83 HTML, Usability und Barrierefreiheit 1 06.09.2004 16:46
script gesucht HTML, Usability und Barrierefreiheit 7 25.08.2004 01:17
Script für Awardprogramm gesucht Beitragsarchiv 0 24.08.2004 14:11
Script gesucht PHP Tipps 2004 2 21.08.2004 21:15
[Erledigt] Brauch ein einfaches Formmail script PHP Tipps 2004 2 18.08.2004 20:40
[Erledigt] suche gutes einfaches script zum email mit attachment versen PHP Tipps 2004 2 05.08.2004 19:05
onmouse over script gesucht Ohrwurm83 HTML, Usability und Barrierefreiheit 3 02.07.2004 15:04
Script gesucht: Seite "XYZ" wird aller "(Zeit Pain-maker PHP Tipps 2004 6 20.06.2004 19:15
[Erledigt] Script gesucht / Hilfe beim Programmieren PHP Tipps 2004 2 15.06.2004 07:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
datenbankfeldname, einfaches script gesucht datenbank eintragen, php eregi blob, teile einer datenbankfeldes ersetzen

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:50 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.